正規表示式是使用單個字串來描述、匹配一系列匹配某個句法規則的字串。爬蟲中解析html可以使用正則來方便的提取資訊
模式描述
\w匹配字母、數字、下劃線
\w匹配非字母、數字、下劃線
\s匹配任意空白字元,相當於[\t\n\r\f]
\s匹配任意非空字元
\d匹配任意數字,相當於[0-9]
\d匹配非數字的字元
\a匹配字串開頭
\z匹配字串結尾,如果存在換行,只匹配到換行前的結束字串
\z匹配字串結尾,如果存在換行,同時還會匹配換行符
\g匹配最後匹配完成的位置
\n匹配乙個換行符
\t匹配乙個製表符
^匹配一行字串的開頭
$匹配一行字串的結尾
.匹配任意字元,除了換行符
[^…]
不在中的字元,比如[^abc]匹配除了a、b、c之外的字元
*匹配0個或多個表示式
+匹配1個或多個表示式
?匹配0個或1個前面的正規表示式定義的片段,非貪婪方式
()匹配括號內的表示式,也表示乙個組
精確匹配n個前面的表示式,比如\d,代表n個數字
匹配n到m次由前面正規表示式定義的片段,貪婪方式
**實戰:
public
class
regexaction
private
static
void
match_1
(string s)
\\s\\w");
matcher matcher = pattern.
matcher
(s);
if(matcher.
find()
)}private
static
void
match_2
(string s)
\\s\\w");
matcher matcher = pattern.
matcher
(s);
if(matcher.
find()
)}private
static
void
match_3
(string s)
\\s\\w");
matcher matcher = pattern.
matcher
(s);
if(matcher.
find()
)}private
static
void
match_4
(string s)
}/**
* 貪婪匹配
* 匹配中間數字,只能得到7
* .*會盡可能多的匹配資料
* @param s
*/private
static
void
match_5
(string s)
}/**
* .*?非貪婪匹配
* @param s
*/private
static
void
match_6
(string s)
}/**
* 正規表示式字串也可以不編譯直接使用
* @param s
*/private
static
void
match_7
(string s)
}
正規表示式基本用法
正規表示式是處理字串的強大工具,常用來實現字串的檢索,替換,匹配驗證等,正規表示式在各種程式語言中都能使用。search search 在匹配時會掃瞄整個字串,然後返回第乙個成功匹配的結果。不會想match那樣開頭不匹配就失敗。findall 搜尋整個字串,然後返回匹配的所有內容。sub 將匹配的字...
正規表示式基本用法B
string物件的方法 match rgexp 使用正規表示式模式對字串執行查詢,並將包含查詢的結果作為陣列返回。stringobj.match rgexp 引數 stringobj 必選項。對其進行查詢的 string 物件或字串文字。rgexp 必選項。為包含正規表示式模式和可用標誌的正規表示式...
正規表示式基本用法C
用限定符指定連續出現的次數 必須出現一次或連續多次 元字元規定其前導字元必須在目標物件中連續出現一次或多次。元字元規定其前導字元必須在目標物件中出現零次或連續多次。最多出現一次 元字元規定其前導物件必須在目標物件中連續出現零次或一次。下面,就讓我們來看一下正規表示式元字元的具體應用。fo 因為上述正...