正則表達式是一種用來匹配字符串的模式。它是由特定字符和元字符組成的語言,被用來描述、查找和匹配一系列的字符。下面是一些正則表達式的語法:
1. 字符匹配
- 普通字符:直接匹配對應(yīng)的字符。
- 特殊字符:需要使用反斜杠\來轉(zhuǎn)義。例如:\., \?, \+,\d(匹配數(shù)字等)等。
2. 元字符
- 量詞元字符:表示出現(xiàn)次數(shù),例如:* 表示重復(fù)零次或更多次;? 表示重復(fù)零次或一次;+ 表示重復(fù)一次或更多次;{m,n} 表示重復(fù)m次到n次。
- 邊界元字符:表示匹配的位置,例如:^ 表示字符串的開始;$ 表示字符串的結(jié)束。
- 組合元字符:表示要匹配的字符是由多個子表達式組合而成的。例如:[] 表示匹配方括號中的任意一個字符或字符范圍;() 表示分組,可以使用|實現(xiàn)或操作,例如:(a|b) 表示匹配a或b。
- 轉(zhuǎn)義元字符:從正則語法的角度看與普通字符相同,但實際含義為正則語法中配合實現(xiàn)特殊功能的字符。例如:\s 表示空白字符;\w 表示單詞字符(字母、數(shù)字和下劃線)。
3. 多行匹配
- m修飾符:表示多行模式匹配。在多行模式中,^和$可以匹配行的開頭和結(jié)尾,而不是字符串的開頭和結(jié)尾。
4. 忽略大小寫
- i修飾符:表示忽略大小寫匹配。
除了上述的基礎(chǔ)語法外,正則表達式還有很多高級的功能,例如前向肯定預(yù)查、后向零寬環(huán)視、捕獲等,可以實現(xiàn)更為復(fù)雜的字符串匹配需求。