分别用javascript和Python处理相同的字符串
javascript是这样实现的:将所有省市区的名字放到一个字符串里使用分隔符分割,
这个字符串很长,在点击 这里下载javascript的实现。
下面的javascrip将省市区分别放在
PCAP,PCAC,PCAA三个数组里:PCAD="北京市$市辖..."//太长省略PCAArea=[];
PCAP=[];//All Provinces
PCAC=[];//All Cities PCAC[ProvinceIndex][i];
PCAA=[];//All Areas PCAA[ProvinceIndex][CityIndex][i]PCAN=PCAD.split("#");
alert("province Length: "+PCAN.length)
for(i=0;i<PCAN.length;i++)
{
PCAA[i]=[];TArea=PCAN[i].split("$")[1].split("|");
for(j=0;j<TArea.length;j++)
{
PCAA[i][j]=TArea[j].split(",");
if(PCAA[i][j].length==1)
PCAA[i][j][1]=SAT;
TArea[j]=TArea[j].split(",")[0]
}
PCAArea[i]=PCAN[i].split("$")[0]+","+TArea.join(",");
PCAP[i]=PCAArea[i].split(",")[0];
PCAC[i]=PCAArea[i].split(',')
}下面我用Python处理上面相同的字符串取出所有省市区:
# coding=utf-8
import string
SPT="请选择省份"
SCT="请选择城市"
SAT="请选择地区"
PCAD="北京市$市辖区,东城区,西…"; #太长省略
PCAD=SPT+"$"+SCT+","+SAT+"#"+PCAD
PCAArea=[]
PCAP=[]#fAll Provinces
PCAC=[]#fAll Cities
PCAC[ProvinceIndex][i];
PCAA=[]#fAll Areas
PCAA[ProvinceIndex][CityIndex][i]
PCAN=PCAD.split("#")
for PCAN_I in PCAN:
lst = []# PCAA[i]
TArea=PCAN_I.split("$")[1].split("|")
for TArea_J in TArea:
PCAA_I_J=TArea_J.split(",")
if(len(PCAA_I_J)==1):
PCAA_I_J.append(SAT)
lst.append(PCAA_I_J)# PCAA[i][j]
TArea_J=TArea_J.split(",")[0]
PCAA.append(lst)
PCAArea_I = PCAN_I.split("$")[0]+","+string.join(TArea,',')
PCAArea.append(PCAArea_I)
PCAP.append(PCAArea_I.split(",")[0])
PCAC.append(PCAArea_I.split(','))
for pid in
range(len(PCAP)):
for cid in range(len(PCAA[pid])):
for aid in range(len(PCAA[pid][cid])):
if(aid!=0):
print PCAP[pid] +"\t"+ PCAA[pid][cid][0] +"\t"+ PCAA[pid][cid][aid]
Tags: Python

Recent comments