re正则表达式模块-创新互联
importre
print(re.match('^chenrong','chenronghua123')) # ^表示开头
#<_sre.SRE_Match object; span=(0, 8), match='chenrong'>
# span=(匹配到的结果第几位开始,匹配到的长度)
#有返回表示匹配到了,没返回表示没有匹配到
print(re.match('^chen','chengronghua123').group()) #group获取匹配的字段
res=re.match('^chen','chengronghua123')
print(res.group())
res=re.match('^chen\d','chen321ronghua123') # \d表示数字匹配一个数字
print(res,'--------',res.group())
res=re.match('chen\d+','chen321ronghua123') #\d+表示一个或多个数字 match从头开始
print(res,'--------',res.group())
res=re.match("c.+","chen321ronghua123") # .点表示匹配任意字符
print(res)
res=re.search("r.+a$","chen321ronghua123a")
#search从整个文本搜索 a$表示整个字符串a结尾
print(res)
res=re.search('R[a-zA-Z]+a','chen321RongAhuaRonghua123arongHua12') #只匹配第一个
print(res)
res=re.search("aaa?",'aalexaaa') #a?表示0次或1次都会返回结果也就是有或没有有或没有前面的那个a
print(res)
res=re.search("[0-9]{1,3}",'aa1x2a345aa') #{1,3} 表示出现的1到3次
print(res)
res=re.findall("[0-9]{1,3}","aa1x2a345aa") #findall找出所有
print(res)
res=re.findall("abc|ABC","ABCabcCD") # |或的意思
print(res)
res=re.search("(abc){2}(\|=){2}","alexabcabc|=|=") # \| 斜杠对 |进行转译
print(res) #(abc){2}(\|=){2}分组匹配
res=re.search("\A[0-9]+[a-z]\Z","123a") #\A[0-9]数字开头 [a-z]\Z数字结尾
print(res) # \A开头 \Z结尾
res=re.search("\D+","123$- \r\n a") #\D匹配非数字
print(res)
res=re.findall("\w","aB123- \r\n a") #\w匹配数字字母
print(res)
res=re.findall("\W","1ddDFR23$ - \r\n a") #\W匹配特殊字符
print(res)
res=re.findall("\s","1dd ng yh\r\n ") #\s匹配空白字符包括空格 tab键换行
print(res)
res=re.search("(?P
print(res)
#特殊用法 (?P<自定义key>[需要找的]{个数})
res=re.search("(?P
print(res)
print(re.search("(?P
"360732199307030689").groupdict()['birthday'])
#split分隔
res=re.split("[0-9]+","abc12de3f45Gh") #按数字进行分隔 split:分隔
print(res)
#sub替换
res=re.sub("[0-9]+","----","abc12de3f45Gh",count=2) #所有的数字替换成----,替换前面2处
print(res)
#只能匹配 \\ 2个斜杠
res=re.search(r"\\","abc12de\\3f45GH")
print(res)
#忽略大小写 flags=re.I或 flags=re.IGNORECASE flags:标示,标注,定义
res=re.search("[a-z]+","ancdA",flags=re.IGNORECASE)
print(res)
#多行模式 flags=re.M同flags=re.MULTILINE一样改变开头 ^结尾$的行为
res=re.search("[a-z]+e$","abcdA\r\nsecondline\r\nthirdline",flags=re.M)
print(res,'---',res.group())
#S(DOTALL)模式匹配包括换行符的任意字符 flags=re.DOTALL同 flags=re.S
res=re.search(r".+","\r\nabc\r\neee",flags=re.DOTALL)
print(res)
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
新闻名称:re正则表达式模块-创新互联
文章来源:http://myzitong.com/article/jsscd.html