re模組
import re
re.match(正規表示式, 需要處理的字串)
re.match(r"hello", 「hello world」)
有返回值則匹配成功,無返回值則匹配不成功
a=re.match()
a.group() 得到匹配的資訊
單個字元匹配
[ 1-8 ] 匹配1到8
【1-36-8】 1到3以及6到8
re.match(正規表示式, 字串, re.i) 忽略大小寫
re.a 不考慮中文
re.u 中文也算
re.s 讓 . 匹配任意包括
4.{}
前面緊挨著的重複幾次
\d 1到3位的數字
\d 必須3位數字
\d 表示3位或3位以上
?1.前面緊挨著的可有可無
非貪婪前面緊挨著的可以有多個或0個
7. +
前面緊挨著的可以有多個或1個
8. $
結尾9. ^
1.出現在字元開頭:開頭
2. 不出現字元開頭:表示非,舉例:a^b 表示a後邊非b
10. |
或11. ()
分組,用group(n) 呼叫
groups() 呼叫所有分組
group(1,2) 呼叫第一和第二分組
\1 在正規表示式中呼叫第乙個括號分組
分組取名 (?p《變數名》資訊)
呼叫取名的分組 (?p=變數名)
12. search() 不從頭匹配
match() 從頭匹配
findall() 找到所有,無需group()
sub() 替換
舉例:re.sub(r"\d+", 「998」, 「pyrhon = 997, c++ = 1024」)
輸出 python = 998,c++ = 998
舉例2:re.sub(r"\d+", fuction, 「pyrhon = 997」) 呼叫函式
fuction(temp):
a = temp.group() a就等於997
return 997替換為return
split() 切割,無需group()
13.?:
適用於括號不讀取分組
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...