新聞中心
創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
小編給大家分享一下python匹配txt的方法,相信大部分人都還不怎么了解,因此分享這邊文章給大家學(xué)習(xí),希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去學(xué)習(xí)方法吧!
python很強(qiáng)大,python的正則表達(dá)式很好用
下面就說說怎么用python的正則表達(dá)式來匹配txt文本中的字符吧。
首先,要知道自己匹配的字符串是什么形式的,然后根據(jù)自己的字符串形式來寫出對(duì)應(yīng)的正則表達(dá)式
例如這次,我需要匹配的是數(shù)字加逗號(hào)加數(shù)字的字符串形式
所以我的正則表達(dá)式的形式如下
rule_name = r'\b(\d*,+\d+)\s'
compile_name = re.compile(rule_name, re.M)
\d代表數(shù)組,然后后面帶符號(hào)的話,符號(hào)要在*后面添加,\s是空格還是tab之類的,\b是代表間斷,具體也不清楚是什么。。r代表的是
生字符串的意思,然后()里面的是最后得到的字符串,在這里,我的字符串不需要那些空格或者間斷之類的,所以就在那些\d那里加了括
號(hào),具體是要用其他代表形式的話,可以直接百度,找到例如字母的表達(dá)。
然后下面就要用compile,里面的re.M的意思就是多行匹配,具體什么意思我也不是很清楚,不知道是文本不止一行時(shí)用,還是說匹配的
字符有多行的時(shí)候用,但是我這樣寫并沒有出現(xiàn)錯(cuò)誤,所以就繼續(xù)這樣寫了。
然后就是打開txt文件,這個(gè)很簡(jiǎn)單
#"獲取文本" f = open(path) st = f.read()
path就是文本的路徑了
之后直接調(diào)用findall函數(shù),可以直接找到在這個(gè)文本里的所有符合表達(dá)式的字符串,并且返回一個(gè)list,里面就是找到的所有字符串了
res_name = compile_name.findall(st)
這個(gè)res_name就是一個(gè)list,里面包含了找到的所有字符串了
調(diào)用的時(shí)候,直接res_name[i]就可以找到對(duì)應(yīng)的第i個(gè)字符串了
以上是python匹配txt的方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!
網(wǎng)站標(biāo)題:python匹配txt的方法-創(chuàng)新互聯(lián)
路徑分享:http://ef60e0e.cn/article/ccpedi.html