python为例,正则表达式学习记录
“^”,"$","."的使用例子
“.” 匹配除换行以外的任意字符
“^” 匹配字符串的起始符
"$“ 匹配字符串的结尾或字符串结尾的换行符之前
import re
str1="1000010001001012312"
p1=re.compile("^10")#以10开头的子字符串
p2=re.compile(".23")#在这里"."表示除换行符以外的任意符号,意思是首位为任意字符,接着是23的子字符串
p3=re.compile("312$")#以312结尾的子字符串
result1=re.findall(p1,str1)
result2=re.findall(p2,str1)
result3=re.findall(p3,str1)
print(result1)
print(result2)
print(result3)
结果为:
['10'] #str1以10开头,所以结果为10
['123'] #任意字符开头,紧接23的,str1中只有"123"
['312'] #str1以312结尾,所以结果为312
“*”,"+","?"的使用例子
首先先列一下三个字符的意思:
“*” 匹配0个或多个(贪婪)符合re的重复,贪婪意味着它将匹配尽可能多的重复。
“+” 匹配1个或多个(贪婪)符合re的重复.
"? ” 匹配0个或1个(贪婪)符合re的重复.
ok,列出来了,下面是例子。
import re
str1="1000010001001012312"
p1=re.compile("10*")#用"10"匹配字符串,其中"*"的意思是,星号前出现的字符(在这里是"0"),出现0次或多次都符合要求,即1,10,100,1000,10000等都符合。当然,程序会以重复次数多的为输出。
p2=re.compile("10+")#用"10"匹配字符串,其中"+"的意思是,加号前出现的字符(在这里是"0"&#x