亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

正則表達(dá)式- [...]

ZHAO_ / 613人閱讀

摘要:中括號在正則表達(dá)式里面也是一個(gè)非常常用的知識點(diǎn),它的主要作用是設(shè)置一個(gè)集合和范圍。一集合在正則表達(dá)式里表示一個(gè)包含或者或者的集合,匹配三者之中的任意一個(gè)。來看一個(gè)例子上面的正則表達(dá)式需要匹配的是數(shù)字和之間為三者中的任意一個(gè)。

[...]中括號在正則表達(dá)式里面也是一個(gè)非常常用的知識點(diǎn),它的主要作用是設(shè)置一個(gè)集合范圍。

一:集合
[abc]在正則表達(dá)式里表示一個(gè)包含a或者b或者c的集合,匹配三者之中的任意一個(gè)。注意元素之間不用空格和逗號隔開,因?yàn)樵谡齽t表達(dá)式里,[]里的空格或者逗號也會被判定為一個(gè)匹配元素。
來看一個(gè)例子:

let reg = /1[abc]2/g;
"1a2".match(reg); //["1a2"]
"1b2".match(reg); //["1b2"]

上面的正則表達(dá)式需要匹配的是數(shù)字1和2之間為a,b,c三者中的任意一個(gè)。所以‘1a2’, "1b2"都可以匹配。
再看下面一個(gè)例子:

let reg = /1[abc]2/g;
"1abc2".match(reg); //null

仍然是上面的正則表達(dá)式,但是‘1abc2’是不匹配的。這里要注意的一點(diǎn)就是[...]里面的元素,當(dāng)只有出現(xiàn)其中的任意一個(gè)時(shí)才能匹配,可以理解為[...]里面的元素只占一個(gè)位置。我們這里的abc占了三個(gè)位置,是不匹配我們給出的正則的。

二:范圍
[1-9]表示數(shù)字1到9之間任意一個(gè)數(shù)字,[a-z]表示a到z之間的任意一個(gè)小寫字母。在[]里用連字符(-)鏈接一個(gè)范圍的兩邊,就能用來表示一個(gè)范圍。

let reg = /[1-9][a-z]/g;
"5d".match(reg); //["5d"]
"d1".match(reg); // null

三:集合和范圍之外

[^]當(dāng)我們在中括號里的元素前加上一個(gè)^,就表示匹配除此之外的元素。

 [^abc] 除了"a","b", "c"之外的任意字符
 [^0-9] 除了數(shù)字之外的任意字符,等同于 D
 [^s] 除了空格之外的任意字符,等同于 S

看一個(gè)例子:

let reg = /[^0-9a-z]/ig;
"nana123@gmail.com".match(reg); //["@", "."]

這里我們需要匹配除了字母和數(shù)字之外的字符,所以我們匹配到了"@"和"."這兩個(gè)字符。

四:[...]里的元字符
我們知道元字符都有特色的含義與作用,比如".", "+", "?", "()"等,如果我們要把他們作為普通字母匹配,需要用""轉(zhuǎn)義。例如,如果我們要匹配".", 需要用到"."。但是當(dāng)他們出現(xiàn)在[]里面的時(shí)候,就失去了他們特色的作用,就做回了自己本身,也不需要再用后斜杠轉(zhuǎn)義。

但是前面我們也講到^出現(xiàn)在[]內(nèi)部最前面,還有"-"出現(xiàn)在[a-z]這種情況下,還是有特殊意義的。那么當(dāng)^不出現(xiàn)在[]內(nèi)部最前面,還有"-"不出現(xiàn)在[a-z]這種情況下,他們也就是自己本身。例如:

let reg = /[-().^+]/g;
"1 + 2 - 3".match(reg); //["+", "-"]

這里的"^"和"-"都只是字符本身,所以我們能匹配到["+", "-"]。
當(dāng)然如果在[]里面給這些元字符轉(zhuǎn)義加上"",也不會有錯(cuò),依然能匹配得到。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/104032.html

相關(guān)文章

  • 正則達(dá)式

    摘要:本文內(nèi)容共正則表達(dá)式火拼系列正則表達(dá)式回溯法原理學(xué)習(xí)正則表達(dá)式,是需要懂點(diǎn)兒匹配原理的。正則表達(dá)式迷你書問世了讓幫你生成和解析參數(shù)字符串最全正則表達(dá)式總結(jié)驗(yàn)證號手機(jī)號中文郵編身份證地址等是正則表達(dá)式的縮寫,作用是對字符串執(zhí)行模式匹配。 JS 的正則表達(dá)式 正則表達(dá)式 一種幾乎可以在所有的程序設(shè)計(jì)語言里和所有的計(jì)算機(jī)平臺上使用的文字處理工具。它可以用來查找特定的信息(搜索),也可以用來查...

    bang590 評論0 收藏0
  • JS中的正則達(dá)式

    摘要:構(gòu)造函數(shù)可以有兩個(gè)字符串參數(shù),第一個(gè)參數(shù)包含正則表達(dá)式的主體部分。只讀的布爾值,說明這個(gè)正則表達(dá)式是否帶有修飾符。中正則的擴(kuò)展構(gòu)造函數(shù)在中,只能接受字符串作為參數(shù),允許其直接接受正則表達(dá)式作為參數(shù)。 上文傳送門:初探正則表達(dá)式 正則表達(dá)式是一個(gè)描述字符模式的對象,JavaScript 的 RegExp 類表示正則表達(dá)式,String 和 RegExp 都定義了方法,后者使用正則表達(dá)式進(jìn)...

    Soarkey 評論0 收藏0
  • JavaScript正則達(dá)式總結(jié)

    摘要:正則表達(dá)式一直是里比較難以掌握的點(diǎn)。在中創(chuàng)建正則的兩種方式使用字面量這就是正則表達(dá)式的字面量語法,表示正則表達(dá)式的模式,為正則表達(dá)式的標(biāo)志。字面量形式的正則表達(dá)式一般使用較多,也推薦大家盡可能使用這種形式,簡潔易讀,符合正常的使用習(xí)慣。 正則表達(dá)式一直是js里比較難以掌握的點(diǎn)。 看不懂,學(xué)不會,記不住。 每次需要用到正則的時(shí)候,都需要再去查找資料。 今天花時(shí)間把正則的知識點(diǎn)總結(jié)下,希望...

    big_cat 評論0 收藏0
  • 正則與JS中的正則

    摘要:注意本文將正則與中的正則分開討論。正則零寬斷言更多參考各種語言對于正則不同支持參考單行模式與多行模式通過設(shè)置正則表達(dá)式后的修飾符可開啟對應(yīng)的匹配模式單行模式和多行模式。 最近這段時(shí)間幫同學(xué)處理一些文檔, 涉及到一些結(jié)構(gòu)化文檔的工作大部分都得使用正則表達(dá)式, 之前對于正則的認(rèn)識大多來源于語言書上那幾頁的介紹, 自己也沒有用過幾次。這里將我之前感到模糊的概念作個(gè)整理。因?yàn)閷S了解多點(diǎn),所...

    firim 評論0 收藏0
  • JavaScript正則達(dá)式的匹配模式

    摘要:選擇分組和引用正則表達(dá)式的語法還包括指定選擇項(xiàng)子表達(dá)式分組和引用前一子表達(dá)式的特殊字符。帶圓括號的表達(dá)式的另一個(gè)用途是允許在同一正則表達(dá)式的后部引用前面的子表達(dá)式。 正則表達(dá)式(regular expression)是一個(gè)描述字符模式的對象。JavaScript的 RegExp類 表示正則表達(dá)式,String和RegExp都定義了方法,后者使用正則表達(dá)式進(jìn) 行強(qiáng)大的模式匹配和文本檢索與...

    wqj97 評論0 收藏0
  • 正則達(dá)式

    摘要:最全正則表達(dá)式總結(jié)驗(yàn)證號手機(jī)號中文郵編身份證地址等是正則表達(dá)式的縮寫,作用是對字符串執(zhí)行模式匹配。學(xué)習(xí)目標(biāo)了解正則表達(dá)式語法在中使用正則表達(dá)式在中使 JS高級技巧 本篇是看的《JS高級程序設(shè)計(jì)》第23章《高級技巧》做的讀書分享。本篇按照書里的思路根據(jù)自己的理解和經(jīng)驗(yàn),進(jìn)行擴(kuò)展延伸,同時(shí)指出書里的一些問題。將會討論安全的類型檢測、惰性載入函數(shù)、凍結(jié)對象、定時(shí)器等話題。1. 安全的類型檢測...

    yibinnn 評論0 收藏0

發(fā)表評論

0條評論

ZHAO_

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<