正則表達式非:從多個方面探討

一、正則表達式非匹配

正則表達式非匹配指的是在匹配時排除某些特定字符或模式,通常使用”^”表示非,例如:

var str = "hello world";
var pattern = /[^e]/g;
console.log(str.match(pattern)); // ["h", "l", "l", "o", " ", "w", "o", "r", "l", "d"]

上面的代碼中,”^”表示匹配除了”e”以外的任意字符。

在實際應用中,非匹配可以用於排除一些特定字符或標點符號,或者用於匹配除了某些規定字符集以外的內容。

二、正則表達式非括號

正則表達式非括號指的是在匹配時排除一組括號中的字符或模式。在括號之前加上”^”表示非,例如:

var str = "hello world";
var pattern = /[^eol]/g;
console.log(str.match(pattern)); // ["h", "l", "l", "w", "r", "d"]

上面的代碼中,”[^eol]”表示匹配除了”e”、”o”、”l”以外的任意字符。

非括號的應用場景與非匹配相似,但更靈活,因為可以排除一個字符集合而不只是單個字符。

三、正則表達式非數字

正則表達式非數字指的是在匹配時排除數字,通常使用”\D”表示非數字的字符,例如:

var str = "hello 123 world";
var pattern = /\D/g;
console.log(str.replace(pattern, "")); // "123"

上面的代碼中,”\D”表示匹配除了數字以外的任意字符,使用replace方法將匹配到的非數字字符替換為空字符串,保留數字。

非數字的應用場景很多,例如在輸入文本框中只允許輸入非數字字符。

四、正則表達式非字母

正則表達式非字母指的是在匹配時排除字母,通常使用”\W”表示非字母的字符,例如:

var str = "hello world 123";
var pattern = /\W/g;
console.log(str.replace(pattern, "")); // "helloworld123"

上面的代碼中,”\W”表示匹配除了字母以外的任意字符,使用replace方法將匹配到的非字母字符替換為空字符串。

非字母的應用場景很多,例如在輸入文本框中只允許輸入非字母字符。

五、正則表達式非貪婪匹配

正則表達式非貪婪匹配指的是在匹配時儘可能少地匹配字符,通常使用”?”表示非貪婪匹配,例如:

var str = "

hello world

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/257062.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-15 12:43
下一篇 2024-12-15 12:43

相關推薦

發表回復

登錄後才能評論