大战熟女丰满人妻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編程,感興趣的同學可以關注一下。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 不一样的天空在线高清观看 | 欧美特级黄色大片 | 一级特黄aaa大片大全 | 亚洲精品视频久久 | 国产精品小视频在线观看 | 91网站国产 | 免费黄色福利视频 | 日本三级日本三级人妇三级四 | 不卡国产在线 | 亚洲精品123区 | 欧美成人另类69 | 欧美色图偷窥自拍 | 免费国产午夜在线观看 | 热99re久久精品天堂vr | 国产成人精品一区二三区2022 | 视频一区免费 | 一级女性全黄生活片免费 | 欧美 xx性 在线 | 伊人久久中文字幕 | 亚洲精品美女在线观看 | 欧美jizz18性欧美 | 成人久久18免费网 | 四虎国产精品永久在线网址 | 国产一区二区视频在线播放 | 日韩精品高清自在线 | 亚洲精品www久久久久久久软件 | 99热爱 | 99色在线播放| 女人十八毛片一级毛片免费看 | 欧美特黄一级大黄录像 | 久久91精品久久久久久水蜜桃 | 日韩第一页在线 | 美女个护士一级毛片亚洲 | 天天cao | 亚洲综合久 | 九九全国免费视频 | 国产成人精品免费午夜 | 久久永久影院免费 | 午夜剧场毛片 | 黄页网站 播放器 日本 | 美日韩毛片 |