正則表達式

正則表達式中的元字符:正則表達式

基本元字符集:^,$,.,*,[],[^],\<,\>算法

擴展元字符集:?,+,{,},|,(,) windows


()標記一個子Reg表達式的開始和結束ide

[]標記任意一個字符spa

{}限定符,標記前一個字符重複次數對象

| 用在()中是字符串或,而不是字符或字符串


*?:*? 重複任意次,但儘量少重複,最小匹配,懶惰算法;(*最大匹配,貪婪算法) it

\將元字符轉爲普通字符(如\[),或將普通字符變爲轉義字符(如\t)class

^匹配字符串的開始位置,若是RegExp對象設置了多行模式,那麼^還將匹配全部\n或\t以後的位置(首行)擴展

$匹配字符串的位置結束,若是RegExp對象設置了多行模式,那麼$還將匹配全部\n或\t以前的位置(行尾)

*將該字符前面正則表達式中的緊鄰字符(能夠是轉義字符)重複0次或屢次(如「ab*」能夠匹配「a」,"ab","abb..";"a\d*"能夠匹配不少)

+將該字符前面正則表達式中的緊鄰字符(能夠是轉義字符)重複1次或屢次

?將該字符前面正則表達式中的緊鄰字符(能夠是轉義字符)重複0次或1次

{n}將該字符前面正則表達式中的緊鄰字符(能夠是轉義字符)重複n次

{n,}將該字符前面正則表達式中的緊鄰字符(能夠是轉義字符)重複至少n次

{n,m}將該字符前面正則表達式中的緊鄰字符(能夠是轉義字符)重複至少n次,最多m次

.匹配\n以外的任何字符(若是匹配全部字符能夠使用[.\n])

(pattern)當一個正則表達式Reg中含()時,若是匹配了該Reg,那麼將只返回與()匹配的部分。"industr(ies)"若是匹配了那麼將只返回ies

(?:pattern)當一個正則表達式Reg中含(?:)時,若是匹配了該Reg,那麼將返回整個與Reg匹配的部分(這個常與|合用)如"industr(?:y|ies)"將匹


配"industry"或"industries"

(?=pattern)當一個正則表達式Reg中含(?=)時,若是匹配了該Reg,那麼將只返回()只外匹配的部分。如"windows (2000|NT)"若是匹配了將只返回"windows"

(?!pattern)負向匹配,與(?=pattern)相反,匹配pattern不包含的字符,而且()的內容不返回。如"windows (2000|NT)",不能比配windows 2000"中的


windows但能匹配windows 3.1中的windows,並只返回windows

|Reg中的字符串或,經常使用在()中,如(abc|bcd)匹配abc或bcd

[xyz]字符集,匹配[]包含的任意一個字符

[^xyz]負向匹配,匹配[]不包含的任意一個字符

-字符範圍




\b匹配一個單詞邊界,即單詞與空格間的位置。如'er\b'能匹配'never is'中的'er'但不能匹配'verb '中的'er'

\B匹配一個非單詞邊界,與上述相反,能匹配'verb '中的'er',但不能匹配'never is'中的'er'

\cx匹配一個由x指明的控制字符,如\cM將匹配回車

\d配置一個數字字符,等價於[0-9]

\D配置一個非數字字符,等價於[^0-9]

\f匹配一個換頁符

\n匹配一個換行符

\r匹配一個回車符

\t匹配一個製表符

\v匹配一個垂直製表符

\s匹配任意一個空白字符,等價於[\f\n\r\t\v]

\S匹配任意一個非空白字符,等價於[^\f\n\r\t\v]

\w匹配數字字母或下劃線,等價於[0-9a-zA-Z_]

\W匹配非數字字母或下劃線,等價於[^0-9a-zA-Z_]

\num            重複第num個()標記的reg表達式

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息