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

首頁 > 語言 > JavaScript > 正文

ES6學習筆記之正則表達式和字符串正則方法分析

2024-05-06 15:18:06
字體:
來源:轉載
供稿:網友

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

RegExp構造函數

在ES5中,RegExp構造函數的參數有兩種情況。

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

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

第二種情況是,參數是一個正則表示式,這時會返回一個原有正則表達式的拷貝。

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

但是,ES5不允許此時使用第二個參數,添加修飾符,否則會報錯。

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

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

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

上面代碼中,原有正則對象的修飾符是ig,它會被第二個參數i覆蓋。

字符串的正則方法

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

ES6將這4個方法,在語言內部全部調用RegExp的實例方法,從而做到所有與正則相關的方法,全都定義在RegExp對象上。

String.prototype.match 調用 RegExp.prototype[Symbol.match]
String.prototype.replace 調用 RegExp.prototype[Symbol.replace]
String.prototype.search 調用 RegExp.prototype[Symbol.search]
String.prototype.split 調用 RegExp.prototype[Symbol.split]

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

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

JavaScript正則表達式在線測試工具:
http://tools.Vevb.com/regex/javascript

正則表達式在線生成工具:
http://tools.Vevb.com/regex/create_reg

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《ECMAScript6(ES6)入門教程》、《JavaScript正則表達式技巧大全》、《JavaScript替換操作技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript錯誤與調試技巧總結》及《JavaScript數學運算用法總結》

希望本文所述對大家JavaScript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 沙坪坝区| 阳城县| 德昌县| 隆安县| 鞍山市| 金寨县| 广饶县| 盱眙县| 全州县| 惠来县| 高雄市| 方正县| 永善县| 甘洛县| 海南省| 固始县| 池州市| 顺义区| 小金县| 阜新市| 界首市| 略阳县| 万安县| 边坝县| 海兴县| 蒙阴县| 乌苏市| 凌云县| 个旧市| 泸定县| 灵璧县| 日喀则市| 石河子市| 陈巴尔虎旗| 绥芬河市| 定远县| 米脂县| 镇雄县| 张家港市| 商水县| 布拖县|