一、正則匹配一個或多個字符
正則表達式對於匹配字符串非常有力,而匹配一個或多個字符則是最基本的一種匹配。在正則表達式中,可以使用“+”符號表示匹配一個或多個重複的字符。
例如,對於字符串“hello”的正則表達式為:
/hel+o/
其含義是匹配以“hel”加一個或多個“l”加“o”結尾的字符串。這時候的正則表達式可以匹配“hello”,“hellllo”以及“helllllllllo”,但不能匹配“helo”或“heo”。
二、正則匹配第一個空格
在字符串匹配中,有時候需要匹配第一個空格。可以使用“\s”表示空格字符,使用“\S”表示非空格字符。對於匹配第一個空格,可以使用“\S*\s”表示匹配第一個空格之前的所有非空格字符,例如:
/\S*\s/
對於字符串“hello world”,這個正則表達式可以匹配“hello ”字符串。
三、正則匹配一個或多個空格
對於匹配一個或多個空格,直接使用“\s+”表示匹配一個或多個空格,例如:
/\s+/
對於字符串“hello world”,這個正則表達式可以匹配“ ”字符串。
四、正則匹配一個或多個數字
數字是經常出現的一種字符類型,可以使用“\d”來表示數字。對於匹配一個或多個數字可以使用“\d+”,例如:
/\d+/
對於字符串“hello 123 world”,這個正則表達式可以匹配“123”字符串。
五、正則匹配一個或多個字母
字母也是幾乎所有字符串類型中必不可少的一個字符類型,可以使用“[a-zA-Z]”來表示匹配大小寫字母。
對於匹配一個或多個字母,可以使用“[a-zA-Z]+”,例如:
/[a-zA-Z]+/
對於字符串“hello world”,這個正則表達式可以匹配“hello”和“world”字符串。
六、正則匹配中間一段
有時候需要匹配某個字符串中間的一段,在正則表達式中可以使用“.*”表示匹配任意字符,也可以使用“[^X]”表示匹配除去X之外的任意字符。比如想匹配“hello world”中間的“lo wo”,可以使用正則表達式:
/lo.*?wo/
其中“.*?”表示匹配包含任意字符的最短字符串。
七、正則匹配一個或多個字符串
有時候需要匹配一個字符串中的多個子字符串,可以使用“|”符號來表示或。例如想匹配“hello”或“world”,可以使用正則表達式:
/hello|world/
對於字符串“hello world”,這個正則表達式可以匹配“hello”和“world”字符串。
八、正則匹配一個或多個相同字符
如果想匹配一段重複的字符,可以使用“\1”來表示,其中“\1”表示匹配已經出現過的字符。
例如想匹配“hello”字符串中重複的“l”,可以使用正則表達式:
/(\w)\1+/
對於字符串“hello”,這個正則表達式可以匹配“ll”字符串。
九、正則匹配零或多個
有時候需要匹配零個或多個字符,可以使用“*”來表示。例如想匹配以“he”開頭的字符串,可以使用正則表達式:
/he.*/
對於字符串“hello world”,這個正則表達式可以匹配“hello world”字符串。
十、正則匹配一次選取3~5個
如果想匹配一段字符出現3~5次,則需要使用正則表達式的括號“()”來進行分組,然後採用“{3,5}”來表示重複次數。例如想匹配一段字符串中包含3~5個數字的字符串,可以使用正則表達式:
/\d{3,5}/
對於字符串“hello 123456789 world”,這個正則表達式可以匹配“12345”字符串。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/151256.html