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

首頁 > 編程 > Python > 正文

python的正則表達式re模塊的常用方法

2020-02-23 04:53:32
字體:
來源:轉載
供稿:網友
1.re的簡介
使用python的re模塊,盡管不能滿足所有復雜的匹配情況,但足夠在絕大多數情況下能夠有效地實現對復雜字符串的分析并提取出相關信息。python 會將正則表達式轉化為字節碼,利用 C 語言的匹配引擎進行深度優先的匹配。

代碼如下:
import re
print re.__doc__


可以查詢re模塊的功能信息,下面會結合幾個例子說明。

2.re的正則表達式語法

正則表達式語法表如下:

語法 意義 說明
"." 任意字符
"^" 字符串開始 '^hello'匹配'helloworld'而不匹配'aaaahellobbb'
"$" 字符串結尾 與上同理
"*" 
0 個或多個字符(貪婪匹配)
<*>匹配<title>chinaunix</title>
"+"
1 個或多個字符(貪婪匹配)
與上同理
"?"
0 個或多個字符(貪婪匹配)
與上同理
*?,+?,??
以上三個取第一個匹配結果(非貪婪匹配) <*>匹配<title>
{m,n}
對于前一個字符重復m到n次,{m}亦可
a{6}匹配6個a、a{2,4}匹配2到4個a
{m,n}?
對于前一個字符重復m到n次,并取盡可能少
‘aaaaaa'中a{2,4}只會匹配2個
"http://"
特殊字符轉義或者特殊序列
[]
表示一個字符集 [0-9]、[a-z]、[A-Z]、[^0]
"|"
A|B,或運算
(...)
匹配括號中任意表達式
(?#...)
注釋,可忽略
(?=...)
Matches if ... matches next, but doesn't consume the string.
'(?=test)'  在hellotest中匹配hello
(?!...)
Matches if ... doesn't match next.
'(?!=test)'  若hello后面不為test,匹配hello
(?<=...) 
Matches if preceded by ... (must be fixed length).
'(?<=hello)test'  在hellotest中匹配test
(?<!...)
Matches if not preceded by ... (must be fixed length).
'(?<!hello)test'  在hellotest中不匹配test

正則表達式特殊序列表如下:

特殊序列符號
意義
/A
只在字符串開始進行匹配
/Z
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沾益县| 曲阜市| 巴塘县| 琼结县| 独山县| 宾阳县| 赞皇县| 宜州市| 图木舒克市| 呈贡县| 手游| 徐汇区| 汝城县| 汝南县| 阿拉尔市| 邮箱| 鄄城县| 明溪县| 上栗县| 宽甸| 哈巴河县| 获嘉县| 中宁县| 汤阴县| 扶风县| 苏尼特左旗| 通渭县| 伊春市| 梁山县| 芦溪县| 榆社县| 晋中市| 温宿县| 揭阳市| 娄底市| 望江县| 白银市| 公安县| 宜宾市| 新营市| 兴山县|