正規表達式(Regular Expression)是一個範本字串用來進行字串比對,以便從目標字串取出符合範本的資料。
正規表達式的引擎能將定義的正規表達式範本字串和目標字串進行比對,引擎回傳布林值,True表示字串符合範本字串的定義的範本,False則表示不符合。
正規表達式的範本字串基本是使用英文字母、數字,和特殊字元所組成,最主要的是字元集和比對符號。
字元集是用「/」開頭的預設字元集,或使用”[“和”]”符號組合成一組字元集的範圍,每個字元集代表比對字串中的字元需要符合的條件。
如下表:
字元集 | 說明 |
---|---|
[abc] | 包含英文字母a、b或c |
[A-Z] | 任何英文的大寫字母 |
[a-z] | 任何英文的小寫字母 |
[0-9] | 數字0~9 |
[^abc] | 除了a、b和c以外的任何字元,[^…]表示之外 |
\w | 任何字元,包含英文字母、數字和底線,即[A-Za-z0-9] |
\W | 任何不是\w的字元,即[^A-Za-z0-9] |
\d | 任何數字的字元,即[0-9] |
\D | 任何不是數字的字元,即[^0-9] |
\s | 空白字元,包含不會顯示的逸出字元,例如:\n和\t等,即[\t\r\n\f] |
\S | 不是空白字元的字元,即[^\t\r\n\f] |
在正規表達式的範本字串除了字元集外,還能包含Escape 逸出字串代表的特殊字元,如下表:
Escape逸出字串 | 說明 |
---|---|
\n | 新行符號 |
\r | Carriage Return 的Enter鍵 |
\.、\+ | 在範本字串代表.、+特殊功能的字元 |
\xHex | 十六進位的ASCII碼 |
\xOct | 八進位的ASCII碼 |
在正規表達式的範本字串不只可以擁有字元集和Escape 逸出字串,還能自行使用序列字元組成的子範本字串,或使用「()」來括起。
今天的分享就先到這邊啦!我們明天見~
書籍參考資料:
文科生也可以輕鬆學習網路爬蟲