美文网首页
几行代码入门正则表达式(python版)

几行代码入门正则表达式(python版)

作者: KevinLH | 来源:发表于2017-10-30 09:06 被阅读0次

几行代码入门正则表达式(python版)

__author__ ='***'

# re  reg正则

importre

line ="bobby123"

# 正则表达式贪婪匹配,从后往前

regex_str ="^b.*3$"# ^代表以什么开头,.代表任意字符,*代表前边字符可以重复任意多次,$以那个字符结尾的,量词后面直接加上一个问号?变成非贪婪匹配

ifre.match(regex_str, line):

print("yes")

#非贪婪模式的理解,贪婪模式从后往前,加?变成非贪婪模式,则从前往后匹配

line2 ="bbooooooooooobby123"

regex_str2 =".*(b.*b).*"

match_obj2 = re.match(regex_str2, line2)

ifmatch_obj2:

print(match_obj2.group(1))# 提取出第一个括号里面匹配到的东西

line3 ="boooobaaaooobbbby123"

regex_str3 =".*?(b.*?b).*"

match_obj3 = re.match(regex_str3, line3)

ifmatch_obj3:

print(match_obj3.group(1))

line4 ="abbdabcd"

regex_str4 ="(a.*?d)"

match_obj4 = re.match(regex_str4,line4)

ifmatch_obj4:

print(match_obj4.group(1))

#+

line5 ="booooobaaaoooobbbbby123"

regex_str5 =".*(b.+b).*"

match_obj5 = re.match(regex_str5,line5)

ifmatch_obj5:

print(match_obj5.group(1))

#{}

line6 ="booooobaaaoooobbbaabby123"

regex_str6 =".*(b.{2}b).*"#{2,5}最少两次,最多5次

match_obj6 = re.match(regex_str6,line6)

ifmatch_obj6:

print(match_obj6.group(1))

#|

line7 ="boobby123"

regex_str7 ="((bobby|boobby)123)"#{2,5}最少两次,最多5次

match_obj7 = re.match(regex_str7,line7)

ifmatch_obj7:

print(match_obj7.group(2))

#[]满足其中任意一个[0-9],,[^1]不是1

#\s:空格 \S:不是空格 \w==[A-Za-z0-9]

#汉字  [\u4E00-\u9FA5]+

line8 ="study in 清华大学"

regex_str8 =".*?([\u4E00-\u9FA5]+大学)"#{2,5}最少两次,最多5次

match_obj8 = re.match(regex_str8,line8)

ifmatch_obj8:

print(match_obj8.group(1))

#\d

line9 ="xxx出生于2001年"

regex_str9 =".*?(\d+)年"#{2,5}最少两次,最多5次

match_obj9 = re.match(regex_str9,line9)

ifmatch_obj9:

print(match_obj9.group(1))

#demo

#\d

line10 ="xxx出生于2001年6月1日"

line10 ="xxx出生于2001/6/1"

line10 ="xxx出生于2001-6-1"

line10 ="xxx出生于2001-06-01"

line10 ="xxx出生于2001-06"

regex_str10 =".*出生于(\d{4}[年/-]\d{1,2}([月/-]\d{1,2}|[月/-]$|$))"#{2,5}最少两次,最多5次

match_obj10 = re.match(regex_str10,line10)

ifmatch_obj10:

print(match_obj10.group(1))

相关文章

网友评论

      本文标题:几行代码入门正则表达式(python版)

      本文链接:https://www.haomeiwen.com/subject/egpytxtx.html