欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ES2015 正則表達(dá)式新增特性

 更新時間:2016年12月25日 15:17:44   投稿:mdxy-dxy  
ES2015 正則表達(dá)式新增特性,在原來正則表達(dá)式基礎(chǔ)上,ES2015增強(qiáng)了對四字節(jié)unicode字符的支持等功能

ES2015 正則表達(dá)式新增特性:

在原來正則表達(dá)式基礎(chǔ)上,ES2015增強(qiáng)了對四字節(jié)unicode字符的支持等功能。

更多正則表達(dá)式內(nèi)容可以參閱正則表達(dá)式教程板塊。

一.RegExp構(gòu)造函數(shù)的使用:

在ES2015之前,使用RegExp構(gòu)造函數(shù)創(chuàng)建正則表達(dá)式對象有兩種方式:

創(chuàng)建方式一:

var reg = new RegExp("antzone","g");

構(gòu)造函數(shù)的第一個參數(shù)是正則表達(dá)式字符串主體,第二個參數(shù)是正則表達(dá)式修飾符。
上面的代碼等價于下面代碼:

var regex = /antzone/g;

創(chuàng)建方式二:

var reg = new RegExp(/antzone/g);

如果參數(shù)不是正則表達(dá)式字符串,那么只能夠有一個參數(shù);下面的寫法是錯誤的:

var reg = new RegExp(/antzone/,g);

不允許使用第二個參數(shù)設(shè)置正則表達(dá)式修飾符。
ES2015改變這一行為,即便是第一個參數(shù)是正則表達(dá)式對象,也可以規(guī)定第二個參數(shù):

var reg = new RegExp(/antzone/gi,"g");

第二個參數(shù)規(guī)定的正則表達(dá)式修飾符會覆蓋第一個參數(shù)中的修飾符。

二.字符串的正則方法:

正則表達(dá)式相關(guān)的match()、replace()、search()和split()方法屬于字符串對象。
ES2015對此作了修改,當(dāng)調(diào)用這四個方法的時候,實際上內(nèi)部調(diào)用的是RegExp對象的實例方法。
(1).String.prototype.match 調(diào)用 RegExp.prototype[Symbol.match]。
(2).String.prototype.replace 調(diào)用 RegExp.prototype[Symbol.replace]
(3).String.prototype.search 調(diào)用 RegExp.prototype[Symbol.search]
(3).String.prototype.split 調(diào)用 RegExp.prototype[Symbol.split]
關(guān)于Symbol可以參閱ES2015 Symbol一章節(jié)。

三.后行斷言(ES2016):

后行斷言可以參閱正則表達(dá)式零寬斷言一章節(jié)。

四.新增修飾符:

修飾符 描述
u修飾符 此修飾符標(biāo)識能夠正確處理大于\uFFFF的Unicode字符。
y修飾符 規(guī)定只能從lastIndex屬性規(guī)定的位置開始進(jìn)行匹配,匹配失敗不會再去嘗試后面的字符。

五.新增屬性:


屬性 描述
sticky屬性 返回一個布爾值,用來標(biāo)識是否設(shè)置了y修飾符。
flags屬性 返回正則表達(dá)式的修飾符。

六.新增方法:

方法 描述
RegExp.escape()(ES2016)

相關(guān)文章

最新評論