最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

正則表達式字符類加深理解

 更新時間:2016年12月25日 21:38:09   投稿:mdxy-dxy  
這篇文章主要介紹了正則表達式字符類加深理解,需要的朋友可以參考下

正則表達式字符類加深理解:
一.基本概念:
字符類相對來說是比較簡單的,但是也有可能由于理解不夠深入或者大意造成一些誤區(qū),下面再來做一下介紹。
字符類[]能夠匹配包含在中括號中的一系列字符中的任意一個,但是匹配的結(jié)果只能夠是其中的一個而不是多個,例如:

var str="abcd";
var reg=/[abcd]/;
console.log(str.match(reg));

以上正則表達式只能夠匹配字符"a"。
二.使用連字符"-":
字符類可以使用連字符"-"來確定一個匹配的范圍,當(dāng)然使用連字符也是有原則的,前后兩個字符是有順序的,如果使用相同的編碼,后面的字符碼位應(yīng)大于或等于前面字符的碼位,例如:

[0-9]//正確的
[9-0]//錯誤的

三.字符類中的特殊字符是否需要轉(zhuǎn)義:
大部分在正則中有特殊意義的字符在匹配其本身時需要進行轉(zhuǎn)義,例如"."可以匹配任意字符,"$"用來匹配字符串的結(jié)尾,在字符類中就不需要進行轉(zhuǎn)義,代碼實例如下:

var str="abc.efcd";
var reg=/c\./g;
console.log(str.match(reg));

以上正則中,在點號前面添加了反斜杠進行轉(zhuǎn)義,所以只會匹配字符串"c.",否則也會匹配"cd"。
但是在字符類中絕大多數(shù)元字符都不需要進行轉(zhuǎn)義,必須要進行轉(zhuǎn)義的字符只有"\",字符"^"和"-"是否需要轉(zhuǎn)義要看具體的應(yīng)用場景,代碼實例如下:
實例一:

var str="ab$c.efcd";
var reg=/[$.]/g;
console.log(str.match(reg));

以上代碼可以匹配字符串中的"$"和"."本身。
實例二:

var str="a\\b$c.efcd";
var reg=/[\\$.]/g;
console.log(str.match(reg));

以上代碼為匹配反斜杠必須要進行轉(zhuǎn)義。
實例三:

var str="ab-c^569";
var reg=/[\^0\-9]/g;
console.log(str.match(reg));

在以上代碼中"^"和"-"已經(jīng)不具有特殊意義了,而是表示它們本身,因為使用了轉(zhuǎn)義。
實例四:

var str="ab-c^569";
var reg=/[-a^c0]/g;
console.log(str.match(reg));

上面的代碼"-"和"^"就沒有進行轉(zhuǎn)義,這是因為它們所在點位置使它們失去了特殊意義。
字符類中也可以使用轉(zhuǎn)義字符:
代碼實例如下:

var str="abc<|12";
var reg=/[\w]/g;
console.log(str.match(reg));

特別注意:\b在字符類外表示單詞邊界,但是在字符類內(nèi)[\b]表示退格符。
四.排除型字符類:
[^]是一個排除型字符類,用以匹配不在中括號中的任一字符,當(dāng)然匹配結(jié)果也只能夠是一個字符,例如:

[^antzone]

以上正則可以匹配除了字符"a"、"n"、"t"、"z"、"o"、"n"和"e"之外的任意字符。
排除型字符類同樣也支持連字符"-",例如:

[^0-9]

可以匹配除了數(shù)字之外的其他字符。

相關(guān)文章

  • 正則表達式日常收集整理(簡單且實用)

    正則表達式日常收集整理(簡單且實用)

    正則表達式,又稱正規(guī)表示法、常規(guī)表示法。正則表達式的功能非常的強大,下面是小編日常收集整理的有關(guān)正則表達式常用知識,感興趣的朋友一起學(xué)習(xí)吧
    2016-08-08
  • RegExp對象的方法和屬性

    RegExp對象的方法和屬性

    RegExp對先看整個字符串是不是匹配,如果沒有發(fā)現(xiàn)匹配,先去掉最后字符串中的最后一個字符,并再次嘗試,如果還沒有發(fā)現(xiàn)匹配,那么再次去掉最后一個字符,這個過程會一直重復(fù)下去直到發(fā)現(xiàn)匹配或不剩任何字符串,上面的簡單量詞都是貪婪量詞。
    2008-06-06
  • javascript中使用正則表達式刪除前后空格的方法

    javascript中使用正則表達式刪除前后空格的方法

    去掉前后位空格的方法有很多種,下面腳本之家小編給大家分享使用js正則表達式如何刪除前后空格,感興趣的朋友跟著一起學(xué)習(xí)學(xué)習(xí)吧
    2015-09-09
  • 匹配中文漢字的正則表達式介紹

    匹配中文漢字的正則表達式介紹

    這篇文章主要介紹了匹配中文漢字的正則表達式介紹,本文同時講解了匹配中文字符的正則和匹配雙字節(jié)字符的正則,需要的朋友可以參考下
    2015-04-04
  • JavaScript正則表達式之后向引用實例代碼

    JavaScript正則表達式之后向引用實例代碼

    正則表達式的幾種后向引用方法,以下是幾種比較經(jīng)典的應(yīng)用,感覺比vbscript的后向引用好多了。
    2008-06-06
  • js中過濾特殊字符的正則表達式

    js中過濾特殊字符的正則表達式

    js中用正則表達式 過濾特殊字符 ,校驗所有輸入域是否含有特殊符號
    2010-09-09
  • 正則表達式、分組、子匹配(子模式)、非捕獲子匹配(子模式)

    正則表達式、分組、子匹配(子模式)、非捕獲子匹配(子模式)

    前面我們知道正則表達式有很多元字符表示匹配次數(shù)(量詞),都是可以重復(fù)匹配前面出現(xiàn)的單個字符次數(shù),需要的朋友可以參考下
    2016-06-06
  • 正則表達式re.sub替換不完整的問題及完整解決方案

    正則表達式re.sub替換不完整的問題及完整解決方案

    re.sub是個正則表達式方面的函數(shù),用來實現(xiàn)通過正則表達式,實現(xiàn)比普通字符串的replace更加強大的替換功能。這篇文章主要介紹了正則表達式re.sub替換不完整的問題及解決方案,需要的朋友可以參考下
    2018-08-08
  • javascript 手機號碼正則表達式驗證函數(shù)

    javascript 手機號碼正則表達式驗證函數(shù)

    隨著手機號碼段的不斷增加,以前網(wǎng)上的手機號碼驗證函數(shù)都不能那么完美的支持了,這里腳本之家編輯特為大家準備的一個簡單的正則與手機驗證的函數(shù)分析。
    2009-12-12
  • SQL 正則表達式及mybatis中使用正則表達式

    SQL 正則表達式及mybatis中使用正則表達式

    這篇文章主要介紹了SQL 正則表達式及mybatis中使用正則表達式的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-06-06

最新評論

富裕县| 安溪县| 旅游| 黄冈市| 冕宁县| 连州市| 安达市| 长汀县| 高淳县| 鸡东县| 蓬莱市| 临清市| 绥中县| 盘山县| 苏尼特右旗| 通州区| 新巴尔虎左旗| 资溪县| 恩施市| 乡宁县| 新龙县| 崇州市| 航空| 濉溪县| 克山县| 浦北县| 梅州市| 南和县| 芒康县| 东阳市| 昌吉市| 九江县| 县级市| 巴南区| 葵青区| 台州市| 台北县| 昭通市| 青冈县| 大悟县| 潜江市|