一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - 正則表達式 - javascript正則表達式學習之位置匹配

javascript正則表達式學習之位置匹配

2020-09-03 15:45saucxs 正則表達式

正則表達式是匹配模式,要么是匹配字符,要么匹配位置。在開發中用到位置匹配的機會很少,但是小編也給大家介紹下關于正則表達式位置匹配的相關知識,感興趣的朋友跟隨小編一起看看吧

一、前言

正則表達式是匹配模式,要么是匹配字符,要么匹配位置。

其實在開發中很少用到匹配位置,本篇文章主要包含:

二、什么是位置

位置:相鄰字符之間的位置。

javascript正則表達式學習之位置匹配

三、如何匹配位置

在ES5中,共有6個錨:^, $, \b, \B, (?=p), (?!p)

可視化形式:

RegExp:/^$\b\B(?=a)(?!b)/g

javascript正則表達式學習之位置匹配

3.1 ^和$

^(脫字符)匹配開頭,在多行匹配中匹配行開頭。

$(美元符)匹配結尾,在多行匹配中匹配行結尾。

比如:我們把字符串的開頭和結尾用#替換(位置可以替換成字符的):

?
1
2
3
var result = "hello".replace(/^|$/g, '#');
console.log(result);
// "#hello#"

多行匹配模式(有修飾符m)時,二者是行的概念,我們需要注意:

?
1
2
3
var result = "I\nlove\njavascript".replace(/^|$/gm, '#');
console.log(result);
// #I#// #love#// #javascript#

3.2 \b和\B

\b是單詞邊界,具體就是\w和\W之間的位置,也包括\w與^之間的位置,和\w和$之間的位置。

比如考察文件名"[JS] Lesson_01.mp4"中的\b,如下:

?
1
2
3
var result = "[JS] Lesson_01.mp4".replace(/\b/g, '#');
console.log(result);
// "[#JS#] #Lesson_01#.#mp4#"

首先,我們知道\w是字符組[0-9a-zA-Z]的簡寫,即使字母數字或者下劃線中任何一個字符。而\W是字符組[^0-9a-zA-Z]的簡寫,即\W是\w以外的任何一個字符。

我們再來看#是怎么來的:

第 1 個,兩邊字符是 "[" 與 "J",是 \W 與 \w 之間的位置。

第 2 個,兩邊字符是 "S" 與 "]",也就是 \w 與 \W 之間的位置。

第 3 個,兩邊字符是空格與 "L",也就是 \W 與 \w 之間的位置。

第 4 個,兩邊字符是 "1" 與 ".",也就是 \w 與 \W 之間的位置。

第 5 個,兩邊字符是 "." 與 "m",也就是 \W 與 \w之間的位置。

第 6 個,位于結尾,前面的字符 "4" 是 \w,即 \w 與 $ 之間的位置。

知道了\b概念后,那\B就好理解了,\b是單詞邊界,\B是非單詞邊界

?
<li id="gsoqo"></li>
1
2
3
var result = "[JS] Lesson_01.mp4".replace(/\B/g, '#');
console.log(result);
// "#[J#S]# L#e#s#s#o#n#_#0#1.m

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费xxxxx大片在线观看影视 | 日本高清中文字幕一区二区三区 | 亚洲 欧美 偷自乱 图片 | 国色天香社区视频免费观看3 | 亚洲黄色图 | 四虎影院免费视频 | 2022天堂岛日产 | 国产资源站| 男人使劲躁女人视频免费 | 黄动漫软件车车好快的车车 | 日本人妖视频 | 99亚洲视频| 国产亚洲精品美女2020久久 | 91私密保健女子养生spa | 吉川爱美与黑人解禁 | 亚洲精品乱码久久久久久蜜桃 | 99国产牛牛视频在线网站 | 嘉嘉的丝袜美腿白丝 | 天美传媒tm0065 | 久久久亚洲国产精品主播 | 深夜在线观看 | 麻豆亚洲一区 | 欧美精品一区视频 | 好大好猛好爽好深视频免费 | 日本激情网 | 俄罗斯大白屁股 | 国产自拍视频一区 | 免费在线影院 | 天天干天天色综合网 | 四虎免费入口 | 久久99视热频国只有精品 | 果冻传媒i91media免费 | 99九九国产精品免费视频 | 草莓视频丝瓜 | 12一14性水蜜桃 | 男人天堂日韩 | 热99精品 | 国产caonila在线观看 | 欧美草比视频 | 色老妈| 美女mm131爽爽爽久久 |
      • <rt id="gsoqo"></rt>
        <center id="gsoqo"><acronym id="gsoqo"></acronym></center>
        <li id="gsoqo"></li>
        <li id="gsoqo"><dl id="gsoqo"></dl></li>