文章详情页
关于python正则表达式中函数findall的用法?
浏览:166日期:2022-09-20 17:47:56
问题描述
1.我的目标是匹配一个地址 ex:123 xuancheng anhui China2.我给的正则表达式为:r’d+(s+[a-zA-Z]+)+s*’代码如下:
pattern = r’d+(s+[a-zA-Z]+)+s*’basestr = ’123 xuancheng china ’m1 = re.findall(pattern, basestr)if m1 is not None: print m1得到的结果为 [’ china’]
这个是以圆括号的内容进行匹配的,我想要配置的是整句话,如何改造呢?除了以下这个用法pattern_2 = r’(d+(s+[a-zA-Z]+)+s*)’返回 [(’123 xuancheng china ’, ’ china’)]使用search 函数能得到想要的结果m2 = re.search(pattern, basestr)print m2.group()得到:123 xuancheng china
问题解答
回答1:r’d+(?:s+[a-zA-Z]+)+s*’
回答2:简单粗暴是这样的,请自己再修改。
再修改一下是这样的
提供的新的字符串也可以。
相关文章:
1. 修改mysql配置文件的默认字符集重启后依然不生效2. angular.js - 关于指令link 中的创建变量问题3. mongodb - windows7下mongod无法正常启动4. java - 腾讯云mysql数据库可以插入数据,但是不能查询数据,求解答5. javascript - 豆瓣的这个自适应是怎么做的?6. 作为新手,未定义索引username,求解,谢谢7. mysql - 请教一个Java做数据库缓存的问题8. javascript - ueditor引入报错问题9. php - 类似Apple官网顶部3级导航该如何设计数据库?10. java - 使用retrofit2下载歌词文件后,进行保存时报空间不足的错误
排行榜

网公网安备