国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python實現的正則表達式功能入門教程【經典】

2020-02-16 01:39:15
字體:
來源:轉載
供稿:網友

本文講述了python實現的正則表達式功能。分享給大家供大家參考,具體如下:

前文:

首先,什么叫正則表達式(Regular Expression)?

例如我們要判斷字符串"adi_e32fv,Ls"里面是否含有子串"e32f",又例如我們在一個含百萬個姓名的txt文件中找姓“王”,名字以“五”結尾的名字,然后打印出來。結果為:“王五”、“王小五”、“王大五”、“王小小五”……

以前我們是使用字符串函數來查找的,但是代碼實現起來會很復雜。如今用正則表達式只需要一句 re.findall('王.*?五',txt1) 就可以了!正則表達式是寫網絡爬蟲的最基本的知識,可以用正則表達式在html中搜集滿足某些字串要求的網址。下面是個人對正則表達式基礎知識的一些總結。

(操作環境:32位Win8系統,運行工具:python2.7.9+Eclipse.)

正文:

1、首先要導入python的re模塊。

2、元字符 . ^ $ * + ? {} [] / | ()

re模塊中的findall(str1,str2)方法返回字串str2中匹配str1格式的字串。例如在字符串'dit dot det,dct dit dot'中匹配'dit'結果為:

str1 = 'dit dot det,dct dit dot'print re.findall('dit',str1)

結果:

['dit', 'dit']

|作用:'dit|dct'表示dit或者dct。

str1 = 'dit dot det,dct dit dot'print re.findall('dit|dct',str1)

結果:

['dit', 'dct', 'dit']

[]作用:[ic]表示i或c,例如'd[ic]t'表示dit和dct兩者,和'dit|dct'等價:

str1 = 'dit dot det,dct dit dot'print re.findall('d[ic]t',str1)

結果:

['dit', 'dct', 'dit']

^作用一:[^ic]中^表示否定,即除了i和c:

str1 = 'dit dot det,dct dit dot'print re.findall('d[^ic]t',str1)

結果:

['dot', 'det', 'dot']

^作用二:^dit表示子串dit在開頭位置,而dct不是在開頭:

str1 = 'dit dot det,dct dit dot'print re.findall('^dit',str1)print re.findall('^dct',str1)

結果:

['dit'][]

$作用:dot$表示子串dot要在末尾位置,而dct不是在末尾:

str1 = 'dit dot det,dct dit dot'print re.findall('dot$',str1)print re.findall('dct$',str1)

結果:

['dot'][]

.作用:d.t表示d與t之間省略了一個任意字符:

str1 = 'dit dot det,dct dit dot'print re.findall('d.t',str1)

結果:

['dit', 'dot', 'det', 'dct', 'dit', 'dot']

+作用:di+t表示d與t之間省略了一個或多個'i':

str1 = 'd dt dit diit det'print re.findall('d.+t',str1)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 五指山市| 怀仁县| 沧州市| 静乐县| 鄂尔多斯市| 平乡县| 五寨县| 华蓥市| 登封市| 新源县| 武功县| 高邮市| 定安县| 富民县| 高平市| 巨鹿县| 裕民县| 岚皋县| 普宁市| 灵山县| 长汀县| 冷水江市| 筠连县| 磐安县| 安宁市| 棋牌| 长治县| 焦作市| 江陵县| 福州市| 南川市| 铜川市| 滦南县| 东丰县| 五指山市| 沿河| 武威市| 饶阳县| 长汀县| 九寨沟县| 同江市|