待处理的部分文本(为方便阅读,已做换行处理,实际文本没有)如下:
var station_names ='@bjb|北京北|VAP|beijingbei|bjb|0 @bjd|北京东|BOP|beijingdong|bjd|1 @bji|北京|BJP|beijing|bj|2 @bjn|北京南|VNP|beijingnan|bjn|3 @bjx|北京西|BXP|beijingxi|bjx|4 @gzn|广州南|IZQ|guangzhounan|gzn|5 @cqb|重庆北|CUW|chongqingbei|cqb|
最开始的代码是这样的:
r=requests.get(url,verify=False) stations=re.findall(r'([A-Z]+)|([a-z]+)',r.text) stations=dict(stations) stations=dict(zip(stations.values(),stations.keys()))
得到的输出如下:
{ 'acheng': 'ACB',
'aershan': 'ART',
'aershanbei': 'ARX',
'aihe': 'AHP',
'aijiacun': 'AJJ',
}现在在Python中,想进一步,用正则表达式提取出其中的中文站名和对应的英文大写缩写。尝试了多次都失败了。。。请问要怎么写。。。也就是说想要输出的是:
{ '阿城': 'ACB',
'阿尔山': 'ART',
'阿尔山北': 'ARX',
'艾河': 'AHP',
'艾家村': 'AJJ',
}Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
12306 站点信息 ,Python3
效果:
{'上海': 'SHH', '上海南': 'SNH', '上海虹桥': 'AOH', '上海西': 'SXH', '北京': 'BJP', '北京东': 'BOP', '北京北': 'VAP', '北京南': 'VNP', '北京西': 'BXP', '天津': 'TJP', '天津北': 'TBP', '天津南': 'TIP', '广州东': 'GGQ', '广州南': 'IZQ', '重庆': 'CQW', '重庆北': 'CUW', '重庆南': 'CRW'}