大佬们,求解答。一段文本,怎么提取里面的手机号 跟人名|营业厅名字呢

2023-06-20 17:17:33 +08:00
 fsq2211

文本示例

揽收任务已分配给快递员韦小燕,联系电话 13628259999

揽收任务已分配给 [张攀] ,司机电话 [ 180643868888 ] ,车牌号 [陕 D88881 ] 。

876 次点击
所在节点    问与答
8 条回复
fsq2211
2023-06-20 17:18:09 +08:00
网点名称:丹东东港市环城大街营业部 电话:0415-77777777
fsq2211
2023-06-20 17:18:27 +08:00
网点名称:台州温岭市新河镇营业部 电话:0576-88888888
NavilleZhang
2023-06-20 17:48:32 +08:00
正则
qiaofanxing
2023-06-20 17:52:23 +08:00
如果格式一样就正则呗,也好写
Puteulanus
2023-06-20 17:56:05 +08:00
手机号匹配 11 位数字
名字从 分配给 开始取,取到逗号,再来个列表把 快递员、括号这些常见的替换成空字符
LeegoYih
2023-06-20 18:01:21 +08:00
如果格式不是固定的,接个快递地址解析 API 呗,一万块几千万次,自己开发训练模型什么的很麻烦。
固定的字符串截就完了。
1016
2023-06-20 18:02:05 +08:00
ChatGPT

------------------------------------------------------------------------------------------------------------

const text = 'xx xxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx x';

// 提取姓名
const nameRegex = /^[\u4e00-\u9fa5]+/;
const name = text.match(nameRegex)[0];
console.log(name); // "xxx"

// 提取地址
const addressRegex = /(?:省|自治区|特别行政区|市|自治州|县|区)(?:\S{2,5}(?:市|自治州|地区)|\S{1,3}(?:县|区))(?:\S{2,8}(?:镇|街道|乡)){0,2}\S{0,10}(?:路|街|巷|号)/;
const address = text.match(addressRegex)[0];
console.log(address); // "xxxxxxxxxxxxxxxxxxxxxxxx"

// 提取手机号
const phoneRegex = /1[3-9]\d{9}/;
const phone = text.match(phoneRegex)[0];
console.log(phone); // "xxxxxxxxxxx"

// 提取性别
const genderRegex = /男|女 /;
const gender = text.match(genderRegex)[0];
console.log(gender); // "x"
fsq2211
2023-06-20 18:36:37 +08:00
@LeegoYih 不固定。。。 对接的平台 都是乱搞

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/950402

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX