正则表达式怎么写?

这是EXCEL表上拷过来的!求提取前面的姓名!正则表达式怎么写?... 这是EXCEL表上拷过来的!求提取前面的姓名!正则表达式怎么写? 展开
 我来答
紫薇参星
科技发烧友

2019-03-28 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3599万
展开全部

正则表达式 ^[\u4e00-\u9fa5]+?(?=女|,|() 取第0捕获组的数据,注意打开多行模式匹配,逗号和小括号都是中文的字符

我给你一个Python语言的例子,你看看吧

import re
a = "戴桂华女(力木通信)(航太通信)(博翼通信工程)\n刘满珍(农机厂)\n向吉斌,男(物贸)\n邓会(烟厂)\n何万远,男((电力公司)\n黄文玉,女((巨凝建材公司)\n何宗玲,女((客运公司)\n何菊林()妇幼\n王勇,男,广电(62.11.20)\n周娟,女,国资(63.10.13)\n"
regex="^[\u4e00-\u9fa5]+?(?=女|,|()"
it = re.finditer(regex,a,re.M)
for match in it:
 print(match.group())

至天使小灿
2019-03-28
知道答主
回答量:68
采纳率:57%
帮助的人:12.1万
展开全部

根据你提供的内容,分析如下:

1、匹配每行头几个汉字

2、每行的头几个汉字前面必定是换行符(首行除外)

综上正则写法如下:

(\n|^)[\u4e00-\u9fa5]+

至于“戴桂华女”中的“女”,建议匹配出来后进行二次处理

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式