一、正則匹配一個或多個字符
正則表達式對於匹配字符串非常有力,而匹配一個或多個字符則是最基本的一種匹配。在正則表達式中,可以使用「+」符號表示匹配一個或多個重複的字符。
例如,對於字符串「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-hk/n/151256.html