day33 Pyhton 常用模組03
阿新 • • 發佈:2018-11-30
一.正則表示式:
1.元字元
. 匹配除換行符以外的任意字元
\w 匹配字母或數字或下劃線
\s 匹配任意的空白符
\d 匹配數字
\n 匹配一個換行符
\t 匹配一個製表符
\b 匹配一個單詞的結尾
^ 匹配字串的開始
$ 匹配字串的結尾
\W 匹配非字母或數字或下劃線
\D 匹配非數字
\S 匹配非空白符
a|b 匹配字元a或字元b
() 匹配括號內的表示式,也表示一個組
[...] 匹配字元組中的字元
[^...] 匹配除了字元組中字元的所有字元
2.量詞
* 重複零次或更多次
+ 重複一次或更多次
? 重複零次或一次
{n} 重複n次
{n,} 重複n次或更多次
{n,m} 重複n到m次
3.惰性匹配和貪婪匹配
* + {} 都是貪婪匹配
.*後面加了?表示惰性匹配
.*?x的特殊含義,找到下一個x為止
str: abcdefgxhijklmn reg: .*?x 結果:abcdefgx
re模組 findall
import re lst = re.findall("\d+", "5點之前. 你要給我5000萬") print(lst)
ret = re.search(r'\d', '5點之前. 你要給我5000萬').group() print(ret)
ret = re.match('a', 'abc').group() print(ret)
it = re.finditer("m", "mai le fo len, mai ni mei!") for el in it: print(el.group())