正則表達(dá)式是對(duì)字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符,、及這些特定字符的組合,,組成一個(gè)“規(guī)則字符串”,這個(gè)“規(guī)則字符串”用來表達(dá)對(duì)字符串的一種過濾邏輯,。 一,、匹配單個(gè)字符 [0-9]:匹配任意數(shù)字 [a-z]:匹配任意小寫字母 [A-Z]:匹配任意大寫字母 [0-9a-zA-Z]:匹配所有數(shù)字和字母 \:轉(zhuǎn)義 ^:取反,如[^au]匹配不包含au的 \w:匹配包括下劃線的任何單詞字符,。等價(jià)于’[A-Za-z0-9_]’ \W:匹配任何非單詞字符,。等價(jià)于 '[^A-Za-z0-9_]' \d:匹配一個(gè)數(shù)字字符。等價(jià)于 [0-9] \D:匹配一個(gè)非數(shù)字字符,。等價(jià)于 [^0-9],。 \s:匹配空白,包括空格,,tab,,換行 \b:匹配單詞邊界,如\bapple\b——>apple ^字符串開始,,$字符串結(jié)束,,^python$——>python .:匹配除 “\n” 之外的任何單個(gè)字符。要匹配包括 '\n’ 在內(nèi)的任何字符,, '[.\n]’ 的模式 ,?:指定一個(gè)字符或字符組,匹配它之前的字符0次或1次,,如匹配 favorite和favourite這兩種寫法,,favou?rite 二、匹配多個(gè)字符 {N}:它之前的字符出現(xiàn)N次,,如匹配電話號(hào)碼\d{4}-\d{7} {M,N}:重復(fù)區(qū)間,,M次到N次,正則是貪婪模式,,優(yōu)先匹配更多的,,要用非貪婪模式{M,N}? {M,}:開閉區(qū)間 +:匹配一個(gè)到無數(shù)個(gè),{1,} *:匹配0到無數(shù)個(gè){0,} .*?:爬蟲經(jīng)常會(huì)用到的一種匹配方法,,表示非貪婪模式,,匹配盡可能少的任意字符 \d+:也是爬蟲常用的,匹配數(shù)字,,如果數(shù)字用.*,?匹配不到,可以用這個(gè) |
|