校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > JavaScript正則表達式迷你書之貪婪模式-學習筆記

JavaScript正則表達式迷你書之貪婪模式-學習筆記

熱門標簽:ai電話機器人搭建 梅縣地圖標注 外呼系統無呼出路由是什么原因 地圖標注教學點 400電話辦理電話辦理 甘肅醫療外呼系統排名 西藏智能外呼系統代理商 呼叫系統外呼只能兩次 貴港公司如何申請400電話

貪婪模式:

在使用修飾匹配次數的特殊符號時,有幾種表示方法可以使同一個表達式能夠匹配不同的次數,比如:"{m,n}", "{m,}", "?", "*", "+",具體匹配的次數隨被匹配的字符串而定。這種重復匹配不定次數的表達式在匹配過程中,總是盡可能多的匹配

非貪婪模式:

在修飾匹配次數的特殊符號后再加上一個 "?" 號,則可以使匹配次數不定的表達式盡可能少的匹配,使可匹配可不匹配的表達式,盡可能的 "不匹配"。這種匹配原則叫作 "非貪婪" 模式,也叫作 "勉強" 模式。如果少匹配就會導致整個表達式匹配失敗的時候,與貪婪模式類似,非貪婪模式會最小限度的再匹配一些,以使整個表達式匹配成功。

var regex = /\d{2,5}/g;
var string = "123 1234 12345 123456";
console.log( string.match(regex) );
// => ["123", "1234", "12345", "12345"]

其中正則 /d{2,5}/,表示數字連續出現 2 到 5 次。會匹配 2 位、3 位、4 位、5 位連續數字。 但是其是貪婪的,它會盡可能多的匹配。你能給我 6 個,我就要 5 個。你能給我 3 個,我就要 3 個。 反正只要在能力范圍內,越多越好。

橫向模糊匹配

橫向模糊指的是,一個正則可匹配的字符串的長度不是固定的,可以是多種情況的。 其實現的方式是使用量詞。譬如 {m,n},表示連續出現最少 m 次,最多 n 次。 比如正則 /ab{2,5}c/ 表示匹配這樣一個字符串:第一個字符是 "a",接下來是 2 到 5 個字符 "b",最后是字符 "c"。

var regex = /ab{2,5}c/g;
var string = "abc abbc abbbc abbbbc abbbbbc abbbbbbc";
console.log( string.match(regex) );
// => ["abbc", "abbbc", "abbbbc", "abbbbbc"]

縱向模糊匹配

縱向模糊指的是,一個正則匹配的字符串,具體到某一位字符時,它可以不是某個確定的字符,可以有多種 可能。 其實現的方式是使用字符組。
譬如 [abc],表示該字符是可以字符 "a"、"b"、"c" 中的任何一個。 比如 /a[123]b/ 可以匹配如下三種字符串: "a1b"、"a2b"、"a3b"。

var regex = /\d{2,5}?/g;
var string = "123 1234 12345 123456";
console.log( string.match(regex) );
// => ["12", "12", "34", "12", "34", "12", "34", "56"]
其中 /\d{2,5}?/ 表示,雖然 2 到 5 次都行,當 2 個就夠的時候,就不再往

多選分支

一個模式可以實現橫向和縱向模糊匹配。而多選分支可以支持多個子模式任選其一。 具體形式如下:(p1|p2|p3),其中 p1、p2 和 p3 是子模式,用 |(管道符)分隔,表示其中任何之一。 例如要匹配字符串 "good" 和 "nice" 可以使用 /good|nice/。

var regex = /good|nice/g;
var string = "good idea, nice try.";
console.log( string.match(regex) );
// => ["good", "nice"]

但有個事實我們應該注意,比如我用 /good|goodbye/,去匹配 "goodbye" 字符串時,結果是 "good"

var regex = /good|goodbye/g;
var string = "goodbye";
console.log( string.match(regex) );
// => ["good"]

而把正則改成 /goodbye|good/,結果是:

var regex = /goodbye|good/g;
var string = "goodbye";
console.log( string.match(regex) );
// => ["goodbye"]

也就是說,分支結構也是惰性的,即當前面的匹配上了,后面的就不再嘗試了。

反向引用

比如要寫一個正則支持匹配如下三種格式

2020-02-25
2020/02/25
2020.02.25

var regex = /\d{4}(-|\/|.)\d{2}(-|\/|.)\d{2}/;
var string1 = "2020-06-12";
var string2 = "2020/06/12";
var string3 = "2020.06.12";
var string4 = "2020-02/12";
console.log( regex.test(string1) ); // true
console.log( regex.test(string2) ); // true
console.log( regex.test(string3) ); // true
console.log( regex.test(string4) ); // true

其中 / 和 . 需要轉義。雖然匹配了要求的情況,但也匹配 "2016-06/12" 這樣的數據。

假設我們想要求分割符前后一致怎么辦?此時需要使用反向引用:

var regex = /\d{4}(-|\/|.)\d{2}\1\d{2}/;
var string1 = "2020-06-12";
var string2 = "2020/06/12";
var string3 = "2020.06.12";
var string4 = "2020-02/12";
console.log( regex.test(string1) ); // true
console.log( regex.test(string2) ); // true
console.log( regex.test(string3) ); // true
console.log( regex.test(string4) ); // false

注意里面的 1,表示的引用之前的那個分組 (-|/|.)。不管它匹配到什么(比如 -),1 都匹配那個同 樣的具體某個字符。

我們知道了 1 的含義后,那么 2 和 3 的概念也就理解了,即分別指代第二個和第三個分組。

使用例子

字符串 trim 方法模擬

function trim(str) {
 return str.replace(/^\s+|\s+$/g, '');
}

表示一個 16 進制字符,可以用字符組 [0-9a-fA-F]。 其中字符可以出現 3 或 6 次,需要是用量詞和分支結構。 使用分支結構時,需要注意順序。 正則如下

var regex = /#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})/g;
var string = "#ffbbad #Fc01DF #FFF #ffE";
console.log( string.match(regex) );
// => ["#ffbbad", "#Fc01DF", "#FFF", "#ffE"]

上面內容就結束了,下面是其他網友的補充可以參考一下

var regExp = /8.*8/;
var str = "8google8 8google8 8google8";

上面例子,是貪婪模式,其實是用了重復(區間)匹配的正則表達式都為貪婪模式

前瞻模式是指某個匹配后面必須跟著某個字符串,例子如下

var regExp = /goo(?=gle)/;
var strOne = google;
var strTwo = googoo;

定語式 返回匹配的是 后面是帶 gle 的;

捕獲性分組和非捕獲性分組:例子如下:

var regExp = /(google)\s(2020)/;
var str = "google 2020";

返回的 是一組數組[ google 2020,google,2020]

var regExp = /(google)\s(?:2020)/;
var str = "google 2020"

返回的數組[google 2020,google]

以上是看到一個微博 記錄以便以后學習

JavaScript正則表達式迷你書大家可以看一下,分類很細。

以上就是JavaScript正則表達式迷你書之貪婪模式-學習筆記的詳細內容,更多關于正則表達式迷你書的資料請關注腳本之家其它相關文章!

標簽:常州 哈密 涼山 湖州 泰安 大興安嶺 海口 本溪

巨人網絡通訊聲明:本文標題《JavaScript正則表達式迷你書之貪婪模式-學習筆記》,本文關鍵詞  JavaScript,正則,表達式,迷你,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《JavaScript正則表達式迷你書之貪婪模式-學習筆記》相關的同類信息!
  • 本頁收集關于JavaScript正則表達式迷你書之貪婪模式-學習筆記的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    久久精品夜夜夜夜久久| 欧美日韩精品综合在线| 久久国产精品区| 五月婷婷综合网| 亚洲第一电影网| 亚洲特级片在线| 精品国免费一区二区三区| 欧美亚洲禁片免费| 欧美在线看片a免费观看| 91香蕉视频在线| 色先锋aa成人| aaa欧美大片| 日本精品视频一区二区| 国产99久久久久| 成人听书哪个软件好| 91亚洲精品久久久蜜桃网站| eeuss影院一区二区三区 | 国产在线视频一区二区| 国产乱码一区二区三区| 成人三级在线视频| 欧美日韩国产一级| 欧美哺乳videos| 中文字幕亚洲电影| 午夜免费欧美电影| 国产在线精品一区二区| 高清在线不卡av| 欧美性大战久久久久久久| 3atv在线一区二区三区| 国产午夜精品福利| 性久久久久久久| 日本高清成人免费播放| 精品三级在线观看| 亚洲成人综合在线| 成人av中文字幕| 欧美zozo另类异族| 天堂一区二区在线| 成人av影院在线| 欧美精品一区男女天堂| 亚洲精品亚洲人成人网 | 91精品婷婷国产综合久久竹菊| 久久久99久久精品欧美| 青娱乐精品在线视频| 色综合天天天天做夜夜夜夜做| 国产视频911| 国产成人福利片| 国产农村妇女精品| 国产激情一区二区三区四区| 日韩午夜av一区| 日韩av网站在线观看| 欧美日韩二区三区| 婷婷综合五月天| 欧美精品aⅴ在线视频| 午夜精品一区在线观看| 在线观看日韩av先锋影音电影院| 亚洲欧美另类综合偷拍| 欧美伊人久久久久久午夜久久久久| 亚洲天堂免费看| 欧美系列亚洲系列| 久久精品国产999大香线蕉| 精品少妇一区二区三区视频免付费| 久久99精品一区二区三区三区| 日韩精品中文字幕一区二区三区 | 蜜桃精品视频在线观看| 精品国产乱码久久久久久夜甘婷婷 | 国内成+人亚洲+欧美+综合在线 | 国产精品成人免费| 在线观看欧美日本| 国产在线精品免费| 亚洲综合区在线| 26uuu色噜噜精品一区| 成人18精品视频| 麻豆国产精品官网| 亚洲色欲色欲www| 欧美mv和日韩mv的网站| 91丨九色丨尤物| 国产尤物一区二区| 亚洲国产婷婷综合在线精品| 久久久久久久综合| 欧美性猛交xxxx乱大交退制版| 久久国产生活片100| 亚洲自拍偷拍网站| 国产精品情趣视频| 久久久国产精品不卡| 91麻豆精品91久久久久同性| 99久久99久久精品免费观看| 麻豆国产欧美一区二区三区| 亚洲欧美日韩小说| 国产日产欧美一区二区三区| 日韩一区二区电影在线| 日韩视频免费直播| 亚洲精品一区二区三区精华液 | 91视频在线观看| 91视频xxxx| 欧美精品日日鲁夜夜添| 日韩精品一区二区三区蜜臀| 欧美不卡激情三级在线观看| 久久蜜桃av一区二区天堂| 欧美激情在线免费观看| 中文字幕一区二区三区在线不卡| 日韩一区日韩二区| 午夜激情综合网| 国产精品一区不卡| 在线免费一区三区| 日韩欧美第一区| 国产精品久久久久影院| 亚洲123区在线观看| 高清不卡一区二区| 色婷婷av一区二区三区大白胸| 在线播放中文字幕一区| 国产香蕉久久精品综合网| 一区二区三国产精华液| 国产suv一区二区三区88区| 欧美在线制服丝袜| 国产精品毛片久久久久久久| 视频一区在线播放| 99精品视频一区| 久久久www成人免费毛片麻豆| 一区二区三区.www| aaa欧美大片| 国产精品丝袜一区| 国产精品自产自拍| 日韩欧美国产精品一区| 亚洲一区二区三区四区不卡| 国产一区二区三区精品欧美日韩一区二区三区| 成人蜜臀av电影| 国产女同互慰高潮91漫画| 黄色成人免费在线| 欧美一区二区三区视频免费| 亚洲激情男女视频| 91啪亚洲精品| 亚洲精品视频免费看| 91精品91久久久中77777| 国产日韩欧美精品电影三级在线| 老司机精品视频一区二区三区| 欧美欧美欧美欧美首页| 亚洲国产视频网站| 国产成人精品www牛牛影视| 久久久国产精品午夜一区ai换脸| 麻豆国产精品官网| 中文字幕欧美三区| 91网页版在线| 免费三级欧美电影| 久久久夜色精品亚洲| 91美女视频网站| 日韩精品1区2区3区| 欧美国产一区在线| 91精品福利在线| 亚洲影视在线播放| 欧美精品一区二区三区四区| 成人aa视频在线观看| 亚洲图片有声小说| 欧美大片在线观看| 日本精品一级二级| 久久电影网站中文字幕| 成人欧美一区二区三区视频网页| 在线一区二区三区四区| 国产99久久久国产精品潘金网站| 亚洲美女视频在线| 国产精品女同一区二区三区| 在线成人午夜影院| 色狠狠av一区二区三区| 国产激情精品久久久第一区二区| 亚洲成a天堂v人片| 国产精品国产三级国产三级人妇| 欧美一区二区视频在线观看 | 久久嫩草精品久久久精品一| 欧美亚洲综合一区| 91黄色小视频| 色爱区综合激月婷婷| 成人av电影在线网| 国产99精品视频| 国产伦精品一区二区三区视频青涩| 亚洲综合色成人| 一区二区三区免费观看| 一区二区高清视频在线观看| 国产精品三级av| 亚洲欧美日韩国产综合在线| 国产精品视频第一区| 中文字幕一区二区三区在线播放| 国产性做久久久久久| 亚洲男人的天堂网| 亚洲国产精品尤物yw在线观看| 亚洲在线免费播放| 男女性色大片免费观看一区二区| 蜜臀a∨国产成人精品| 韩国一区二区三区| 国产不卡在线播放| 色94色欧美sute亚洲线路一久 | 欧美性生活大片视频| 99久久久久免费精品国产| 一本大道av伊人久久综合| 91色视频在线| 色偷偷久久人人79超碰人人澡| 95精品视频在线| 91福利区一区二区三区| 欧美日本不卡视频| 精品国产第一区二区三区观看体验 | 美女网站一区二区| 肉丝袜脚交视频一区二区| 国产一区二区视频在线|