正则表达式

正则表达式采用贪婪匹配模式
以下实例为了匹配字符串booooooooob

import re

line = "booooooooooobby123"
regex_str = ".*?(b.*?b).*" 
'''
没有第一个问号会匹配到最后符合的即bb,没有第二个问号他会匹配到最后一个b即boooooooooobb
'''
match_obj = re.match(regex_str, line)
if match_obj:
    print(match_obj.group(1))

括号用于提取字符串:

import re

line = "bobby123"
regex_str = "((boby|bobby)123)"
match_obj = re.match(regex_str, line)
if match_obj:
    print(match_obj.group(2))   //打印bobby
    print(match_obj.group(1))  //打印bobby123

中括号中的^表示“非”
\s表示匹配一个空格,\S表示匹配一个非空格字符,若想匹配多个可以\S+
\d表示匹配数字
[]中[-年]这种模式匹配不到‘-’字符,需要把汉字放在前面

正则表达式提取汉字:[\u4E00-\u9FA5]+ 表示匹配任意多个汉字

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 正则表达式到底是什么东西?字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等...
    狮子挽歌阅读 2,268评论 0 9
  • 忘了从哪收集的资料了,放这儿,以备不时之需。 只能输入数字:"^[0-9]*$"。 只能输入n位的数字:"^\d{...
    study_monkey阅读 1,476评论 0 7
  • \d 代表 [0-9] \l 代表 [a-z] \u 代表 [A-Z] \a 代表 [A-Za-z] \w 代表 ...
    zhuoshao阅读 1,476评论 0 5
  • Java的正则表达式讲解:(为了能看清,本文正则表达式用中文的句号代替英文句点) 英文句点符号:匹配单个任意字符。...
    红姑娘阅读 4,510评论 0 2
  • 图片版权归本人所有,图片授权于简书用于设置为app开屏图,一切版权纠纷与简书无关
    小女巫惠惠阅读 322评论 2 6

友情链接更多精彩内容