小白求教;如果用正则抓取中文中的某一段。

[复制链接]
查看11 | 回复3 | 2021-1-27 05:44:03 | 显示全部楼层 |阅读模式
地址:辽宁省铁岭市开原市开原经济开发区科研南街25号

比如上面的!我只要抓取“辽宁”。
我测试了很久,一直是报错,不知道是为什么呀!



我是小白,所以求大神给一下具体一点的解决办法!谢谢了啦!
分 -->
回复

使用道具 举报

千问 | 2021-1-27 05:44:03 | 显示全部楼层
你代码里写的是"地区"正则可以这样写(?<=地址:).*?(?=省)
你是想要做省份识别吗cpca这个包了解一下适用于python3https://github.com/DQinYuan/chinese_province_city_area_mapper
回复

使用道具 举报

千问 | 2021-1-27 05:44:03 | 显示全部楼层
谢谢!cpca功能很强大哇!
不过我的只需要抓到省份,并将省份录入表格中就行了!最终我写成了这样:
findDiqu=re.compile(r'北京|上海|天津|重庆|河北|山西|内蒙古|辽宁|吉林|黑龙江|江苏|浙江|安徽|福建|江西|山东|河南|湖北|湖南|广东|广西|海南|四川|贵州|云南|西藏|陕西|甘肃|青海|宁夏|新疆')
diqu=findDiqu.search(total)
ifdiquisNone:
print('没找到省份')
diquNew=''
else:
diquNew=diqu.group()
基本解决了我的需求!只是有些地址根本没有上面库里的!比如很多地址直接是:绵阳市*****因此就取不到它是属于四川这个了!不过目前这点对我工作的影响也不是很大。
回复

使用道具 举报

千问 | 2021-1-27 05:44:03 | 显示全部楼层
不客气你举例的绵阳市*****这种缺失地址cpca其实也可以直接匹出四川来很方便实用
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行