婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 淺析lastIndex對正則表達式結(jié)果的影響

淺析lastIndex對正則表達式結(jié)果的影響

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

前言

  今天遇到一個問題,用正則表達式去檢查同一個字符串時,交替返回true和false。無奈之下,重新翻了翻權(quán)威指南,發(fā)現(xiàn)罪魁禍首原來是lastIndex。可在控制臺嘗試下

let reg = /[\d]/g
//undefined
reg.test(1)
//true
reg.test(1)
//false

lastIndex

  lastIndex在權(quán)威指南中是如下解釋:它是一個可讀/寫的整數(shù)。如果匹配模式帶有g(shù)修飾符,這個屬性存儲在整個字符串中下次索引的開始位置,這個屬性會被exec()和test()用到。還是上面的例子,觀察下lastIndex屬性

let reg = /[\d]/g   //有修飾符g
//undefined
reg.lastIndex
//0
reg.test(1)      
//true
reg.lastIndex   //匹配一次后,lastIndex改變
//1
reg.test(1)    //從index 1 開始匹配
//false
reg.lastIndex
//0
reg.test(1)
//true
reg.lastIndex
//1

  第一次使用test()匹配成功后,lastIndex被設(shè)為匹配到的結(jié)束位置,就是1;第二次再test()時,從index 1 開始匹配,匹配失敗,lastIndex重置為0 。這樣就造成了匹配結(jié)果與預期不符

解決

  1、不使用 g 修飾符

reg = /[\d]/
///[\d]/
reg.test(1)
//true
reg.test(1)
//true
reg.lastIndex
//0
reg.test(1)
//true
reg.lastIndex
0

  2、test()之后手動設(shè)置lastIndex = 0

淺析正則表達式對象lastIndex屬性

js中正則表達式的使用方式有兩種,一種是正則表達式對象的方法,一種是字符串對象的方法,前者有exec(str)、test(str)兩個方法,后者有match(regexp)、replace(regexp)、search(regexp)、split(search)四個方法。當作為正則表達式對象的方法使用時,要特別注意它的lastIndex屬性。

var regexp = /abcd/g;
var str = 'abcdefg';
alert(regexp.test(str)); //true
alert(regexp.test(str)); //false
alert(regexp.test(str)); //true

上面這段代碼運行的結(jié)果分別是彈出true、false、true,考慮到用的是同一個正則模式,是不是讓人有點迷糊?

其實這正是正則表達式對象的lastIndex屬性在作怪。lastIndex從字面上來講就是最后一個索引,實際上它的意思是正則表達式開始下一次查找的索引位置,第一次的時候總是為0的,第一次查找完了的時候會把lastIndex的值設(shè)為匹配到得字符串的最后一個字符的索引位置加1,第二次查找的時候會從lastIndex這個位置開始,后面的以此類推。如果沒有找到,則會把lastIndex重置為0。要注意的是,lastIndex屬性只有在有全局標志正則表達式中才有作用,如果我們把上面代碼中正則表達式的g標志去掉,那么三次彈出的就都是true了。

exec()方法同樣是如此,exec()方法返回的是一個數(shù)組,數(shù)組的第一個元素是匹配到的字符串,之后的元素則分別對應匹配到的字串,也就是正則表達式中用括號括起來的那些。如果使用exec()方法的正則表達式?jīng)]有全局標志,則只會匹配第一個,如果正則表達式有全局標志,則可以循環(huán)使用exec()來得到所有的匹配,直到exec()返回null為止,也就是找不到匹配了。這里能夠循環(huán)使用同一個正則表達式的exec()方法,靠的就是lastIndex,因為帶全局標志的正則表達式每次匹配后都會更新lastIndex的值作為下次查找匹配的起點。

最后要說明的是字符串的正則方法里lastIndex屬性是不起作用的,不管正則模式是不是全局的。

總結(jié)

以上所述是小編給大家介紹的lastIndex對正則表達式結(jié)果的影響,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

您可能感興趣的文章:
  • JS中正則表達式要注意lastIndex屬性
  • 淺析正則表達式中的lastIndex以及預查
  • js正則表達式之RegExp對象屬性lastIndex,lastMatch,lastParen,lastContext,rightContext屬性講解
  • Javascript lastIndex 正則表達式的一個疑惑

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

巨人網(wǎng)絡(luò)通訊聲明:本文標題《淺析lastIndex對正則表達式結(jié)果的影響》,本文關(guān)鍵詞  淺析,lastIndex,對,正則,表達式,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《淺析lastIndex對正則表達式結(jié)果的影響》相關(guān)的同類信息!
  • 本頁收集關(guān)于淺析lastIndex對正則表達式結(jié)果的影響的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人av在线电影| 国产欧美一区二区三区鸳鸯浴| 91福利社在线观看| 欧美精品一卡两卡| 91免费在线播放| 日韩午夜电影av| 成人综合婷婷国产精品久久免费| 色欧美日韩亚洲| 久久久久久久久伊人| 久久综合综合久久综合| 51精品视频一区二区三区| 91成人在线观看喷潮| 99这里都是精品| 欧美猛男gaygay网站| 亚洲v日本v欧美v久久精品| 国产伦精品一区二区三区在线观看| 国产福利一区二区三区视频| 91色porny在线视频| 91精品国产综合久久精品app | 日韩国产一二三区| 国产成人av福利| 日韩一区二区三区在线| 亚洲精品国产第一综合99久久| 国产福利一区二区三区视频在线| 波多野结衣的一区二区三区| 在线视频中文字幕一区二区| 91同城在线观看| 欧美高清在线精品一区| 国产精品一级片在线观看| 在线一区二区视频| 日本成人中文字幕在线视频| 2024国产精品| 粗大黑人巨茎大战欧美成人| caoporen国产精品视频| 精品国产a毛片| 日本不卡123| 在线一区二区三区| 国产电影一区在线| 老司机免费视频一区二区| 国产精品网站在线观看| 亚洲激情在线激情| 欧美日韩亚洲综合在线| 亚洲欧美国产高清| www.欧美日韩| 亚洲丰满少妇videoshd| 欧美亚洲综合另类| 亚洲在线免费播放| 懂色中文一区二区在线播放| 亚洲人一二三区| 99久久99久久免费精品蜜臀| 中文子幕无线码一区tr| 91成人免费电影| **性色生活片久久毛片| 国产91精品一区二区麻豆网站 | 青青草一区二区三区| 欧美色国产精品| 日韩黄色免费网站| 在线成人午夜影院| 美女一区二区三区在线观看| 久久久久久久久久久久久夜| 国产ts人妖一区二区| 日韩一区在线免费观看| 91久久精品一区二区三| 日日夜夜一区二区| 一本一道波多野结衣一区二区| 国产精品传媒视频| 欧美不卡视频一区| 国产精一品亚洲二区在线视频| 久久久久久久久免费| 精品视频在线看| 免费不卡在线视频| 欧美国产丝袜视频| 91精品欧美福利在线观看| 久久99久久99精品免视看婷婷| 国产欧美一区二区三区鸳鸯浴| 国产精品亚洲第一区在线暖暖韩国| 亚洲一区二区三区四区在线| 日韩欧美色电影| 成人午夜免费电影| 久久精品久久99精品久久| 国产日韩欧美精品在线| 91久久久免费一区二区| 波多野结衣中文字幕一区二区三区 | 久久久.com| 91精品国模一区二区三区| 国产福利电影一区二区三区| 伊人婷婷欧美激情| 日韩免费观看高清完整版在线观看| 懂色av一区二区在线播放| 亚洲成人精品一区二区| 久久久不卡网国产精品二区| 色婷婷av一区二区三区gif | 日韩久久久精品| 欧美日韩精品福利| 豆国产96在线|亚洲| 婷婷成人综合网| 亚洲国产视频直播| 国产欧美一区二区精品久导航 | 亚洲天堂网中文字| 在线播放视频一区| 成人av在线资源| 懂色av一区二区三区免费观看 | 色婷婷av一区二区三区大白胸 | 亚洲另类中文字| 久久久久久97三级| 9191国产精品| 国产成人激情av| 从欧美一区二区三区| 久久精品二区亚洲w码| 一区二区三区在线高清| 亚洲日本va午夜在线影院| 久久久久88色偷偷免费| 51午夜精品国产| 欧美一级二级三级乱码| 欧美午夜影院一区| 91麻豆精品秘密| 成人福利视频网站| 色欧美乱欧美15图片| 大胆欧美人体老妇| 国产精品自拍网站| 成人h动漫精品一区二区| 紧缚奴在线一区二区三区| 五月激情综合婷婷| 中文字幕av在线一区二区三区| 国产精品理伦片| 精品捆绑美女sm三区| 精品日韩欧美在线| 亚洲国产电影在线观看| 久久综合九色欧美综合狠狠 | 不卡欧美aaaaa| 国产高清精品久久久久| 激情图片小说一区| 午夜日韩在线观看| 亚洲第一电影网| 亚洲欧美日韩一区二区三区在线观看 | 国产成人午夜精品影院观看视频 | 久久久夜色精品亚洲| 精品美女被调教视频大全网站| 成人a区在线观看| 91麻豆123| 色综合天天综合色综合av| 成人性视频网站| 精品视频一区二区不卡| 在线播放视频一区| 日韩午夜激情av| 91精品国产一区二区| 国产人成一区二区三区影院| 国产三级久久久| 国产精品久久久久四虎| 亚洲18影院在线观看| 奇米影视一区二区三区| 久久机这里只有精品| 99久久精品免费观看| 在线观看成人免费视频| 精品国产一区二区精华| 亚洲三级免费电影| 国产精品资源站在线| 制服丝袜亚洲色图| 中文字幕综合网| 国产原创一区二区三区| 欧美中文一区二区三区| 2024国产精品| 免费观看在线综合| 91福利在线看| 国产精品久久久久久久午夜片| 美腿丝袜亚洲综合| 欧美日韩中文另类| 亚洲精品日韩专区silk| 国产成人免费高清| 日韩欧美不卡在线观看视频| 一区二区三区四区激情| 国产盗摄精品一区二区三区在线| 欧美日高清视频| 亚洲日本va在线观看| 麻豆精品一区二区综合av| 99久久精品免费| 亚洲国产精品高清| 国产在线精品国自产拍免费| 欧美精品亚洲二区| 亚洲风情在线资源站| 91色乱码一区二区三区| 国产精品久线在线观看| 国产精品一卡二卡在线观看| 欧美群妇大交群中文字幕| 夜夜嗨av一区二区三区中文字幕| 99免费精品在线| 精品国产精品网麻豆系列| 日本不卡一区二区| 91麻豆精品国产91久久久久| 亚洲一区二区三区中文字幕在线| 99久久99久久精品免费观看| 国产女人水真多18毛片18精品视频| 国内国产精品久久| 精品乱人伦小说| 国产在线精品一区在线观看麻豆| 717成人午夜免费福利电影| 亚洲第一成年网| 欧美一区三区四区| 丝袜国产日韩另类美女| 欧美在线观看视频一区二区三区|