如何匹配一个前面没有“代理”二字的中文公司如:火狐有限公司但“火狐代理有限公司”就不匹配。而且“公司”必须得有我是这样的,但是python里运行并没有成功,[\u4e00-\u9fa5]+(?<!代理)有{0,1}限{0,1}公司,谢谢
[\u4e00-\u9fa5]+(?<!代理)有{0,1}限{0,1}公司
学习是最好的投资!
谢邀,正则表达式我不擅长,但你可以试试[u4e00-u9fa5]{1,}.{1,}[^代理]公司,在我的测试中能work
[u4e00-u9fa5]{1,}.{1,}[^代理]公司
python2 要用unicode进行匹配
regex = ur'^(?!.*代理.*).*公司$' print(re.findall(regex, u'火狐代理有限公司')) print(re.findall(regex, u'代理有限公司')) print(re.findall(regex, u'有限公司'))
python3 将u去掉就可以了
u
我觉得你还是听昨天那哥们的意见,用python3吧, 我用python3试了下,一切正常,2里面就得不到结果.
python3 下的运行结果: >>> re.findall(r'^[^代理].*有?限?公司', "火狐代理有限公司") ['火狐代理有限公司'] >>> re.findall(r'^[^代理].*有?限?公司', "代理有限公司") [] >>> re.findall(r'^[^代理].*有?限?公司', "有限公司") ['有限公司'] >>>
谢邀,正则表达式我不擅长,但你可以试试
[u4e00-u9fa5]{1,}.{1,}[^代理]公司
,在我的测试中能workpython2 要用unicode进行匹配
python3 将
u
去掉就可以了我觉得你还是听昨天那哥们的意见,用python3吧,
我用python3试了下,一切正常,2里面就得不到结果.