大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 JS的構造正則表達式

JS的構造正則表達式

更新時間:2021-07-20 16:50:03 來源:動力節點 瀏覽1149次

構造正則表達式

使用RegExp構造函數可以定義正則表達式對象,具體語句格式如下:

new RegExp(pattern, attributes);

參數pattern是一個字符串,指定匹配模式或者正則表達式對象。參數attributes是一個可選的修飾性標志,包含"g""i"和"m"三個選項,分別設置全局匹配、區分大小寫的匹配和多行匹配;如果參數pattern是正則表達式對象,則必須省略該參數。

該函數返回一個新的RegExp對象,該對象包含指定的匹配模式和匹配標志。

示例1

下面示例使用RegExp構造函數定義了一個簡單的正則表達式,匹配模式為字符“a”,沒有設置第二個參數,所以這個正則表達式只能匹配字符串中第一個小寫字母“a”,后面的字母“a”將無法被匹配到。

var r = new RegExp("a");   //構造最簡單的正則表達式
var s = "JavaScript != JAVA";  //定義字符串直接量
var a = s.match(r);  //調用正則表達式執行匹配操作,返回匹配的數組
console.log(a);  //返回數組["a"]
console.log(a.index);  //返回值為1,匹配的下標位置

示例2

如果希望匹配字符串中所有的字母a,且不區分大小寫,則可以在第2個參數中設置g和i修飾詞。

var r = new RegExp("a", "gi");  //設置匹配模式為全局匹配,且不區分大小寫
var s = "JavaScript != JAVA";  //字符串直接量
var a = s.match(r);  //匹配查找
console.log(a);  //返回數組["a", "a", "A", "A"]

示例3

在正則表達式中可以使用特殊字符。下面示例的正則表達式將匹配字符串“JavaScript JAVA”中每個單詞的首字母。

var r = new RegExp("\\b\\w", "gi");  //構造正則表達式對象
var s = "JavaScript JAVA";  //字符串直接量
var a = s.match(r);  //匹配查找
console.log(A);  //返回數組["j", "J"]

在上面示例中,字符串"\b\w"表示一個匹配模式,其中“b"表示單詞的邊界,"w"表示任意ASCII字符,反斜杠表示轉義序列。為了避免Regular()構造函數的誤解,必須使用“\”替換所有“”字符,使用雙反斜杠表示斜杠本身的意思。

在腳本中動態創建正則表達式時,使用構造函數RegExp()會更方便。例如,如果檢索的字符串是由用戶輸入的,那么就必須在運行時使用RegExp()構造函數來創建正則表達式,而不能使用其他方法。

示例4

如果RegExp()構造函數的第1個參數是一個正則表達式,則第2個參數可以省略。這時RegExp()構造函數將創建一個參數相同的正則表達式對象。

var r = new RegExp("\\b\\w", "gi");  //構造正則表達式
var r1 = new RegExp(r);  //把正則表達式傳遞給RegExp()構造函數
var s = "JavaScript JAVA";  //字符串直接量
var a = s.match(r);  //匹配查找
console.log(a);  //返回數組["j", "J"]

把正則表達式直接量傳遞給RegExp()構造函數,可以進行類型封裝。

示例5

RegExp()也可以作為普通函數使用,這時與使用new運算符調用構造函數功能相同。不過如果函數的參數是正則表達式,那么它僅返回正則表達式,而不再創建一個新的RegExp()對象。

var a = new RegExp("\\b\\w", "gi");  //構造正則表達式對象
var b = new RegExp(a);  //對正則表達式對象進行再封裝
var c = RegExp(a);  //返回正則表達式直接量
console.log(a.constructor == RegExp);  //返回true
console.log(b.constructor == RegExp);  //返回true
console.log(c.constructor == RegExp);  //返回true

以上就是動力節點小編介紹的"JS的構造正則表達式",希望對大家有幫助,想了解更多可查看JavaScript教程。動力節點在線學習教程,針對沒有任何Java基礎的讀者學習,讓你從入門到精通,主要介紹了一些Java基礎的核心知識,讓同學們更好更方便的學習和了解Java編程,感興趣的同學可以關注一下。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产日韩中文字幕 | 狠狠色噜噜狠狠狠狠2021天天 | 1024国产欧美日韩精品 | sss欧美华人整片在线观看 | 愉拍自拍 | 亚洲欧美视频一区二区三区 | 日韩精品一区二区三区高清 | 久久久影院亚洲精品 | 国产精品三区四区 | 国产精品成人免费综合 | 成年女人免费看片 | 国产一区二区三区久久 | 欧美成人午夜 | 久久国产高清视频 | 成视频年人黄网站免费视频 | 中文字幕一区精品 | 日韩精品一区二区三区乱码 | 国产 麻豆 欧美亚洲综合久久 | 亚洲福利视频精选在线视频 | www.黄| 免费观看一级欧美在线视频 | 亚洲国产精品久久久久婷婷老年 | 视频一区二区国产无限在线观看 | 中国一级免费毛片 | 91网址在线播放 | 这里精品 | 国内特级毛片 | 99热在这里只有免费精品 | 免看一级a一片成人123 | 天天操天天噜 | 全部免费毛片免费播放 | 国产成人一区二区三区高清 | 尹人香蕉 | 色婷婷久久综合中文久久一本` | 亚洲欧美日韩国产综合高清 | 亚洲精品综合久久 | 二区国产| 欧美日韩中文在线 | 久久久久久全国免费观看 | 成人合集大片bd高清在线观看 | 玖玖精品在线视频 |