文字處理已經成為計算機的常見工作之一
對文字內容的搜尋,定位,提取是邏輯比較複雜的工作
為了快速解決上述問題,產生了正規表示式技術
定義 :
即文字的高階匹配模式,提供搜尋,替代等功能。其本質是一系列由特殊符號組成的字串,這個字串即正規表示式。
匹配原理 :
由普通字元和特殊符號組成字串,通過描述字元的重複和位置等行為,達到匹配某一類字串的目的
目標 :
熟練掌握正規表示式符號
實現基本的文字搜尋,定位,提取,理解正則用法
能夠適用re模組操作正規表示式
特點:1. 普通字元
a 每個字元匹配對應的字元
2. 或
| 匹配 | 兩邊任意乙個正規表示式
3. 匹配單個字元
. 匹配除換行外的任意字元
4. 匹配開始位置
^ 匹配目標字串的開頭位置
5. 匹配結束位置
$ 匹配字串的結束位置
6. 匹配重複
* 匹配前面的字元出現0次或多次
7. 匹配重複
+ 匹配前面的字元出現1次或多次
8. 匹配重複
? 匹配前面的字元出現0次或1次
9. 匹配重複
匹配指定的重複次數
10. 匹配重複
匹配前面的正規表示式 m–n次
11. 匹配字元集合
[字符集] 匹配任意乙個字符集中的字元
12. 匹配字符集
[^…] 字符集取非,除列出的字元之外任意乙個字元
13. 匹配任意(非)數字字元
\d 匹配任意數字字元 [0-9]
\d 匹配任意非數字字元 [^0-9]
14. 匹配任意(非)普通字元
\w 匹配普通字元 [_0-9a-za-z] 也能匹配普通漢字
\w 匹配非普通字元
15. 匹配任意(非)空字元
\s 匹配任意空字元 [ \r\t\n\v\f]
\s 匹配任意非空字元
16. 匹配字串位置
\a 匹配字串開頭位置 ^
\z 匹配字串結尾位置 $
絕對匹配 : 正規表示式要完全匹配目標字串內容
在正規表示式開始和結束位置加上^ $ (或者\a \z)。這樣正規表示式必須匹配整個目標字串才會有結果
17. 匹配(非)單詞邊界
\b 匹配單詞邊界位置
普通字元和非普通字元交界認為是單詞邊界
\b 匹配非單詞邊界位置
元字元總結
匹配單個字元
a . \d \d \w \w
\s \s […] [^…]
匹配重複
*+ ?
匹配位置
^ $ \a \z \b \b
其他| () \
正規表示式 元字元
現在你已經知道幾個很有用的元字元了,如 b 還有 d 當然還有更多的元字元可用,比如 s 匹配任意的空白符,包括空格,製表符 tab 換行符,中文全形空格等 w匹配字母或數字或下劃線或漢字等。ba w b 匹配以字母a 開頭的單詞 先是某個單詞開始處 b 然後是字母a 然後是任意數量的字母或數字 w...
正規表示式 元字元
元字元 描述.點 匹配任何單個字元。例如正規表示式r.t匹配這些字串 rat rut r t,但是不匹配root。匹配行結束符。例如正規表示式weasel 能夠匹配字串 he s a weasel 的末尾 但是不能匹配字串 they are a bunch of weasels.匹配一行的開始。例如...
正規表示式元字元
l 基本元字元 元字元說明 匹配任意單個字元 邏輯或操作符 定義乙個字元集合,匹配該集合中的乙個字元 對字元集合求非 是對整個集合求非,而不是緊挨著 符號的字元 在字元集合中定義乙個區間。如 a za z 對下乙個字元轉義。比如 n表示換行。數量元字元 元字元說明 匹配前乙個字元 子表示式 零次或多...