一、正則表達式非匹配
正則表達式非匹配指的是在匹配時排除某些特定字元或模式,通常使用”^”表示非,例如:
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-tw/n/257062.html