正则表达式

正则表达式采用贪婪匹配模式
以下实例为了匹配字符串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]+ 表示匹配任意多个汉字

你可能感兴趣的:(正则表达式)