正則表達式知識整理

學好正則表達式很重要,下面是一些關於正則表達式的基本知識整理
regex


原文鏈接

正則表達式知識整理

\ : 轉義字符

^ : 匹配字符串開始位置

$ : 匹配字符串結束位置

* : 匹配前面的表達式任意次

+ : 匹配前面的表達式一次或多次

? : 匹配前面的表達式零次或一次

{n} : 匹配確定的n次,n爲非負整數

{n,} : 匹配至少n次,n爲非負整數

{n,m} : 匹配至少n次,至多m次,n和m均爲非負整數且n<=m

(*,+,{n,m})? : 非貪婪匹配模式,儘可能少的匹配,例如“z+”可以匹配“zzzzz”,“z+?”只匹配到“z”

. : 匹配除\r\n外任何單個字符

(pattern) : 匹配pattern,並獲取匹配,可以獲取匹配到的結果,用\1-\9表示,例如“(o)”匹配到“o”,“(o)\1”匹配到“oo”,“(\d{3})\1”匹配到“123123”,不能匹配到“123456”

(?:pattern) : 非獲取匹配,匹配pattern,但不獲取匹配結果

(?=pattern) : 非獲取匹配,正向肯定預查,在任何匹配pattern的字符串開始處匹配查找字符串,該匹配不需要獲取供以後使用,例如“test(?=123)”能匹配“test123”中的“test”,但不能匹配“test456”中的“test”

(?!pattern) : 非獲取匹配,正向否定預查,在任何匹配pattern的字符串開始處匹配查找字符串,該匹配不需要獲取供以後使用,例如“test(?=123)”能匹配“test456”中的“test”,但不能匹配“test123”中的“test”

(?<=pattern) : 非獲取匹配,反向肯定預查,和正向肯定預查類似,方向相反,例如“(?<=123)test”能匹配“123test”中的“test”,但不能匹配“456test”中的“test”

(?

發佈了36 篇原創文章 · 獲贊 4 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章