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

首頁 > 編程 > regex > 正文

ES2015 正則表達式新增特性

2020-01-20 22:03:48
字體:
來源:轉載
供稿:網友

ES2015 正則表達式新增特性:

在原來正則表達式基礎上,ES2015增強了對四字節unicode字符的支持等功能。

更多正則表達式內容可以參閱正則表達式教程板塊。

一.RegExp構造函數的使用:

在ES2015之前,使用RegExp構造函數創建正則表達式對象有兩種方式:

創建方式一:

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

構造函數的第一個參數是正則表達式字符串主體,第二個參數是正則表達式修飾符。
上面的代碼等價于下面代碼:

var regex = /antzone/g;

創建方式二:

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

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

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

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

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

第二個參數規定的正則表達式修飾符會覆蓋第一個參數中的修飾符。

二.字符串的正則方法:

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

三.后行斷言(ES2016):

后行斷言可以參閱正則表達式零寬斷言一章節。

四.新增修飾符:

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

五.新增屬性:


屬性 描述
sticky屬性 返回一個布爾值,用來標識是否設置了y修飾符。
flags屬性 返回正則表達式的修飾符。

六.新增方法:

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 绥阳县| 南康市| 定兴县| 张家港市| 宁国市| 搜索| 鄂州市| 广元市| 彰化市| 三明市| 揭东县| 宜阳县| 武山县| 芜湖市| 响水县| 河北省| 晋州市| 鄄城县| 白玉县| 天台县| 崇礼县| 平凉市| 昌乐县| 无为县| 镇雄县| 泊头市| 英德市| 岚皋县| 密云县| 阿尔山市| 葫芦岛市| 岳阳县| 呼和浩特市| 荥阳市| 巢湖市| 天峨县| 桦南县| 应城市| 安龙县| 抚松县| 祁门县|