首頁 >web前端 >js教程 >深入理解JS正規表示式之元字元和字元類別的解析

深入理解JS正規表示式之元字元和字元類別的解析

不言
不言原創
2018-07-11 09:29:161496瀏覽

這篇文章主要介紹了關於深入理解JS正規表示式之元字元和字元類別的解析,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

元字元和字元類別

元字元

正規表示式由兩種基本字元類型組成:

1.原義(正常)文字字元:代表本身意義的字符,如:a、b、c、1、2、3等。

2.元字符:元字符是在正則表達式中有特殊含義的非字母字符,如\b代表單字邊界,可以是單字的開頭或結尾。

常見的符號元字元:

* + ? $ ^ . | \ () {} []

字元類別

一般情況下,正規表示式一個字元對應字串一個字元。例如,表達式ab\t的意思就是ab加上一個\t(水平製表符)。

但是,很多時候,我們不想匹配某個字符,而想匹配某類字符。此時,我們可以使用元字元[]來建立一個簡單的類別。

所謂類別是指符合某些特性的對象,一個泛指,而不是特指某個字元。表達式[abc]把字元abc歸為一類,可以符合這類字元。

範例:

let reg = /[abc]/g
let text = 'a1b2c3d4e5'
text.replace(reg, 'X')  // X1X2X3d4e5

可以發現,當正規表示式符合到abc時,自動替換為X

字符類別取反

很多時候回碰到這麼一種情況,即不想匹配某些字符,其他都匹配。此時,可以使用字元類取反-使用元字元`^建立反向類,即不屬於某類的內容。

表達式[^abc]表示不是字元abc的內容。

範例:

let reg = /[^abc]/g
let text = 'a1b2c3d4e5'
text.replace(reg, 'X')  // aXbXcXXXXX

結果表明,當表達式匹配到abc時,不進行處理,其餘的字元都轉換為了X

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

<a title="深入理解JS正则表达式之REGEXP对象的解析" href="http://www.php.cn/js-tutorial-406370.html" target="_blank">深入理解JS正規表示式之REGEXP物件的解析</a>

<a title="JavaScript实现快速排序的算法思想" href="http://www.php.cn/js-tutorial-406371.html" target="_blank" style='font-family: "Microsoft Yahei", "Hiragino Sans GB", Helvetica, "Helvetica Neue", 微软雅黑, Tahoma, Arial, sans-serif;'> JavaScript實作快速排序的演算法想法</a><br>

以上是深入理解JS正規表示式之元字元和字元類別的解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn