正則表達式
在編寫處理字符串的程序或網(wǎng)頁時,經(jīng)常會有查找符合某些復雜規(guī)則的字符串的需要邪驮。正則表達式就是用于描述這些規(guī)則的工具。換句話說,正則表達式就是記錄文本規(guī)則的代碼石景。
正則表達式通常用于兩種任務(wù):1.驗證,2.搜索/替換拙吉。用于驗證時潮孽,通常需要在前后分別加上^
和$
,以匹配整個待驗證字符串筷黔;搜索/替換時是否加上此限定則根據(jù)搜索的要求而定往史,此外,也有可能要在前后加上\b
而不是^和$
佛舱。
元字符 metacharacter
匹配位置
- 匹配字符串的開始
^
- 匹配字符串的結(jié)束
$
- 匹配單詞的開頭結(jié)尾
\b
匹配數(shù)量
- 匹配0或1個數(shù)量
?
- 匹配n個數(shù)量
{n}
- 匹配n-m個數(shù)量
{n,m}
- 匹配至少n個數(shù)量
{n,}
- 匹配任意數(shù)量
*
- 匹配至少一個數(shù)量
+
匹配字符
- 匹配一個數(shù)字
\d
- 匹配除了換行符外任意字符
.
- 匹配空白符
\s
- 匹配字母數(shù)字下劃線漢字
\w
- 匹配集合中的一個字符
[set]
分組
- 匹配一個分組
(分組)
字符轉(zhuǎn)義
- 元字符跳脫
\metacharacter
- 斜線跳脫
\\
分支
|
反義
- 和元字符反著干椎例,大寫
\W
\S
\D
\B
[^set]
后向引用
后向引用用于重復搜索前面某個分組匹配的文本。
斷言
負向斷言
注釋
貪婪匹配请祖、懶惰匹配
默認為貪婪匹配订歪;加?
則為懶惰匹配