python正則表達(dá)式re.match()匹配多個(gè)字符方法的實(shí)現(xiàn)
import re text = '123h1ello world'text1 = '123Hello world456'text2 = 'hello world' res = re.match('d*', text) res1 = re.match('d*', text1)res2 = re.match('d*', text2) print(res.group())print(res1.group())print(res2.group())
輸出結(jié)果為
123123
Process finished with exit code 0
示例2:*
需求:匹配出,一個(gè)字符串第一個(gè)字母為大小字符,后面都是小寫(xiě)字母并且這些小寫(xiě)字母可有可無(wú)
import re#注意是前一個(gè)字符ret = re.match('[A-Z][a-z]*','M')print(ret.group())ret = re.match('[A-Z][a-z]*','AaBcDE')print(ret.group())ret = re.match('[A-Z][a-z]*','Aabcdef')print(ret.group())
#運(yùn)行結(jié)果MAaAabcdef
2. +表示匹配1個(gè)或者多個(gè)任意字符 w+表示匹配一個(gè)或多個(gè)字母,數(shù)字或下劃線import re text = 'he+llo world'text1 = 'Hello world456'text2 = '+hello world' res = re.match('w+', text)res1 = re.match('w+', text1)res2 = re.match('w+', text2) print(res.group())print(res1.group())print(res2)
輸出結(jié)果為
heHelloNone
Process finished with exit code 0
示例2:+
需求:匹配出,變量名是否有效
import renames = ['name1','_name','2_name','__name__']for i in names: ret = re.match('[a-zA-Z_]+[w]*',i) if ret: print('變量名 %s 符合要求' % ret.group()) else: print('變量名 %s 非法' % i)
#運(yùn)行結(jié)果變量名 name1 符合要求變量名 _name 符合要求變量名 2_name 非法變量名 __name__ 符合要求
3. ?表示匹配0個(gè)或一個(gè)字符 w?表示匹配0或1個(gè)字母,數(shù)字或下劃線import re text = 'he+llo world'text1 = 'Hello world456'text2 = '+hello world' res = re.match('w?', text)res1 = re.match('w?', text1)res2 = re.match('w?', text2) print(res.group())print(res1.group())print(res2.group())
輸出結(jié)果為
hH
Process finished with exit code 0
示例2:?
需求:匹配出0到99之間的數(shù)字
import reret = re.match('[1-9]?[0-9]','7')print(ret.group())ret = re.match('[1-9]?d','33')print(ret.group())ret = re.match('[1-9]?d','09')print(ret.group())
#運(yùn)行結(jié)果7330 # 這個(gè)結(jié)果并不是想要的,利用$才能解決
4. {m}表示匹配m個(gè)字符 d{11}表示匹配11個(gè)數(shù)字字符import re text = 'he+llo world'text1 = 'Hello world456'text2 = 'hello world' res = re.match('w{2}', text)res1 = re.match('w{3}', text1)res2 = re.match('w{4}', text2) print(res.group())print(res1.group())print(res2.group())
輸出結(jié)果為
heHelhell
Process finished with exit code 0
示例2:{m}需求:匹配出,8到20位的密碼,可以是大小寫(xiě)英文字母、數(shù)字、下劃線
import reret = re.match('[a-zA-Z0-9_]{6}','123a3g45678')print(ret.group())ret = re.match('[[a-zA-Z0-9_]{8,20}','1ad3123456addfcasdef')print(ret.group())
#運(yùn)行結(jié)果123a3g1ad3123456addfcasdef
5. {m,n}表示匹配m-n個(gè)字符 w{2,4}表示匹配2-4個(gè)字符import re text = 'hello world'text1 = 'Helloworld456'text2 = 'hello world' res = re.match('w{2,5}', text)res1 = re.match('w{6,8}', text1)res2 = re.match('w{20,25}', text2) print(res.group())print(res1.group())print(res2)
helloHelloworNone
Process finished with exit code 0
到此這篇關(guān)于python正則表達(dá)式re.match()匹配多個(gè)字符方法的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)python re.match()匹配字符內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. asp中response.write("中文")或者js中文亂碼問(wèn)題2. JSP 中request與response的用法詳解3. XML入門(mén)的常見(jiàn)問(wèn)題(二)4. jsp cookie+session實(shí)現(xiàn)簡(jiǎn)易自動(dòng)登錄5. ASP基礎(chǔ)知識(shí)Command對(duì)象講解6. asp取整數(shù)mod 有小數(shù)的就自動(dòng)加17. css代碼優(yōu)化的12個(gè)技巧8. ASP.NET MVC使用異步Action的方法9. CSS3中Transition屬性詳解以及示例分享10. ASP.NET MVC通過(guò)勾選checkbox更改select的內(nèi)容
