国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

ES6學(xué)習(xí)筆記之正則表達(dá)式和字符串正則方法分析

2019-11-19 16:44:48
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文實(shí)例講述了ES6正則表達(dá)式和字符串正則方法。分享給大家供大家參考,具體如下:

RegExp構(gòu)造函數(shù)

在ES5中,RegExp構(gòu)造函數(shù)的參數(shù)有兩種情況。

第一種情況是,參數(shù)是字符串,這時(shí)第二個(gè)參數(shù)表示正則表達(dá)式的修飾符(flag)。

var regex = new RegExp('xyz', 'i');// 等價(jià)于var regex = /xyz/i;

第二種情況是,參數(shù)是一個(gè)正則表示式,這時(shí)會(huì)返回一個(gè)原有正則表達(dá)式的拷貝。

var regex = new RegExp(/xyz/i);// 等價(jià)于var regex = /xyz/i;

但是,ES5不允許此時(shí)使用第二個(gè)參數(shù),添加修飾符,否則會(huì)報(bào)錯(cuò)。

var regex = new RegExp(/xyz/, i);// Uncaught TypeError: Cannot supply flags when constructing one RegExp from another

ES6改變了這種行為。如果RegExp構(gòu)造函數(shù)第一個(gè)參數(shù)是一個(gè)正則對(duì)象,那么可以使用第二個(gè)參數(shù)指定修飾符。而且,返回的正則表達(dá)式會(huì)忽略原有的正則表達(dá)式的修飾符,只使用新指定的修飾符。

new RegExp(/abc/ig, 'i').flags// "i"

上面代碼中,原有正則對(duì)象的修飾符是ig,它會(huì)被第二個(gè)參數(shù)i覆蓋。

字符串的正則方法

字符串對(duì)象共有4個(gè)方法,可以使用正則表達(dá)式:match()replace()search()split()

ES6將這4個(gè)方法,在語(yǔ)言?xún)?nèi)部全部調(diào)用RegExp的實(shí)例方法,從而做到所有與正則相關(guān)的方法,全都定義在RegExp對(duì)象上。

String.prototype.match 調(diào)用 RegExp.prototype[Symbol.match]
String.prototype.replace 調(diào)用 RegExp.prototype[Symbol.replace]
String.prototype.search 調(diào)用 RegExp.prototype[Symbol.search]
String.prototype.split 調(diào)用 RegExp.prototype[Symbol.split]

字符串對(duì)象共有4個(gè)方法,可以使用正則表達(dá)式:match()、replace()、search()和split()。

PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:

JavaScript正則表達(dá)式在線(xiàn)測(cè)試工具:
http://tools.VeVB.COm/regex/javascript

正則表達(dá)式在線(xiàn)生成工具:
http://tools.VeVB.COm/regex/create_reg

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《ECMAScript6(ES6)入門(mén)教程》、《JavaScript正則表達(dá)式技巧大全》、《JavaScript替換操作技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 依安县| 福安市| 武陟县| 吉木乃县| 敖汉旗| 江源县| 成安县| 太谷县| 宽甸| 商河县| 读书| 清苑县| 翼城县| 涟源市| 凯里市| 铅山县| 乌拉特中旗| 桐庐县| 曲阳县| 阿克| 呈贡县| 永泰县| 泾川县| 烟台市| 女性| 抚顺市| 方正县| 平原县| 普定县| 大荔县| 永登县| 色达县| 苗栗县| 武清区| 乌兰浩特市| 阜宁县| 米易县| 延吉市| 南溪县| 泽普县| 泽普县|