# 規則 字串 從字串中找到符合規則的內容
# [0-9] 匹配數字
# [a-z] 匹配小寫字母
# [a-z] 匹配大寫字母
# [8-9]
# [a-za-z] 匹配大小寫字母
# [a-za-z0-9] 匹配大小寫字母+數字
# [a-za-z0-9_] 匹配數字字母下滑線
# 65 - 90
# 97 - 122
# \w 匹配數字字母下滑線 word關鍵字 [a-za-z0-9_]
# \d 匹配所有的數字 digit [0-9]
# \s 匹配所有的空白符 回車/換行符 製表符 空格 space [\n\t ]
# 匹配換行符 回車 \n
# 匹配製表符 tab \t
# 匹配空格
# \w \d \s 和\w \d \s取反
# [\s\s] [\d\d] [\w\w]是三組全集 意思是匹配所有字元
# \b 表示單詞的邊界
# 和轉義字母相關的 元字元
# \w \d \s(\n\t) \b \w \d \s
# ^ $
# ^ 匹配乙個字串的開始
# $ 匹配乙個字串的結束
# . 表示匹配 除換行符之外的所有字元
# 只要出現在中括號內的內容都可以被匹配
# [^] 只要不出現在中括號中的內容都可以被匹配
# 有一些有特殊意義的元字元進入字元組中會回覆它本來的意義 : . | [ ] ( )
# a|b 或 符合a規則的或者b規則的都可以被匹配
# 如果a規則是b規則的一部分,且a規則比b規則要苛刻/長,就把a規則寫在前面
# 將更複雜的\更長的規則寫在最前面
# () 分組 表示給幾個字元加上量詞約束的需求的時候,就給這些量詞分在乙個組
# 表示 這個量詞之前的字元出現n次
# 表示這個量詞之前的字元至少出現n次
# 表示這個量詞之前的字元出現n-m次
# ? 表示匹配量詞之前的字元出現 0次 或者 1次 表示可有可無
# + 表示匹配量詞之前的字元出現 1次 或者 多次
# * 表示匹配量詞之前的字元出現 0次 或者 多次
# 匹配整數 \d+
# 匹配小數 \d+\.\d+
# 匹配小數或者整數
# \d+\.\d+|\d+
# \d+(\.\d+)?
# 匹配身份證號碼 : [1-9]\d[\dx]|[1-9]\d
# [1-9]\d(\d[\dx])?
# 正規表示式的匹配特點 : 貪婪匹配
# 它會在允許的範圍內取最長的結果
# 非貪婪模式/惰性匹配 : 在量詞的後面加上?
# .*?x 匹配任意非換行符字元任意長度 直到遇到x就停止
# print(r'\\n')
# print(r'\n')
# 關於字串挪到python中的轉義的問題 : 只需要在工具中測試完畢,確認可以匹配上之後,挪到python中在字串的外面加上r,r''即可
正規表示式 正規表示式 總結
非負整數 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正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...