需求:
1.从一个字符串中识别出用户的姓名、电话、省、市、区及详细地址。就是顺丰寄快递时用的功能。
2.字符串各个信息间没有任何标识符
例:
a.四川省宜宾市南溪区金鑫花园 1 栋 6 楼 16777778888 张三
b.张三四川省宜宾市南溪区金鑫花园 1 栋 6 楼 16777778888
c.四川省宜宾市南溪区金鑫花园 1 栋 6 楼张三 16777778888
从上面提取出以下信息:
姓名:张三
省:四川省
市:宜宾市
区:南溪区
详细地址:金鑫花园 1 栋 6 楼
例子中 a 最简单,找出手机号,前后分别去解析即可,但是 b 、c 比较困难,各位有什么思路吗?
1
MakeItGreat 2021-06-30 17:14:57 +08:00 via Android
大概 30 个省是固定的,并且没人重名,然后地址一般是连续的这样就能把地址搞回来了
|
2
gaozhy 2021-06-30 17:18:38 +08:00 1
|
3
jiaxin1121 2021-06-30 17:18:40 +08:00
|
4
Resource 2021-06-30 17:21:34 +08:00
|
5
Resource 2021-06-30 17:23:36 +08:00
百度的 NLP 和 3 楼发的项目,如果人名和地名重合,识别还是有些问题的
|
6
kop1989 2021-06-30 17:29:43 +08:00 1
关键词命中(手机号码、省市区县、姓)
人名和地名混淆的情况,则用省市关键词 + “号”、“门”、“3~5 位数字”等做地址与人名的切割。 恶意的将姓名和地址、电话混淆书写的情况不考虑。 |
7
WhereverYouGo OP @MakeItGreat #1 怎么才能将地址和人名分开呢?
|
8
WhereverYouGo OP @jiaxin1121 #3 这个我之前看了,字符串中不同信息是用分隔符分开的。没有啥参考性
|
9
WhereverYouGo OP @Resource #4 这个看着还是用分隔符将不同信息分隔开了。。。我是要处理没有分隔符的数据
|
10
ijrou 2021-06-30 21:34:36 +08:00
如果是深度学习。。。那么要找的数据样本太多了,
还是用正则吧,,, 哦,没有完全绝对 100%匹配上的。。 |