正規表示式RegExp物件

2022-07-15 11:14:00 字數 3323 閱讀 7280

字面量的方式   var patt = /匹配規則/修飾符;     / --> 邊界的意思

new關鍵字     var patt = new regexp(/匹配規則/,修飾符);

test()  檢測指定字串中是否含有某種匹配規則

exec()  檢索字串中指定的值。返回找到的值,並確定其位置

// 字面量的方式   var patt = /匹配規則/修飾符;     / --> 邊界的意思

//建立乙個正規表示式,可以用來檢視指定字串中是否含有數字

1

//字面量的方式 var patt = /匹配規則/修飾符; / --> 邊界的意思2//

建立乙個正規表示式,可以用來檢視指定字串中是否含有數字

3var patt = /[0-9]/;45

var str = "hello1234";

6var str2 = "hello";78

//test() 檢測指定字串中是否含有某種匹配規則 返回乙個布林值

9var flag =patt.test(str);

10 console.log("flag:",flag);//

flag: true

1112 flag =patt.test(str2);

13 console.log("flag:",flag);//

flag: false

1415

//new關鍵字 var patt = new regexp(/匹配規則/,修飾符);

16var reg = new regexp(/\d/);

17 console.log(reg.test(str));//

true

18 console.log(reg.test(str2));//

false

1
g  global,執行全域性匹配

i  忽略大小寫

m 執行多行匹配

1

var str = "hello 中國!!hello 北京!!";2//

匹配中文:[\u4e00-\u9fa5]3//

是乙個固定用法,中文只能在正規表示式裡這樣表示

4var patt = /[\u4e00-\u9fa5]/g;5//

g global,執行全域性匹配

6console.log(str.match(patt));78

//i 忽略大小寫

9var patt2 = /[a-z]/g;

10console.log(str.match(patt2));

1112

var patt3 = /[a-z]/gi;

13console.log(str.match(patt3));

1415

//m 執行多行匹配

16var str2 = "感謝大家光臨,本人於\n10月1日上午在家**國兵直播";

17var patt4 = /^1/g; //

^ 以指定規則開頭

18 console.log(patt4.test(str2));//

false

1920

var patt5 = /^1/gm;

21 console.log(patt5.test(str2));//

true

[0-9]:查詢任何從0至9的數字

[abc]:用於查詢方括號之間的任何字元;方括號內的字元可以是任何字元或字元範圍

[^abc]:查詢任何不在方括號之間的字元  ^否定的意思

[a-z]:查詢所有的小寫字母

[a-z]:查詢所有的大寫字母

[a-z]:查詢所有的字母(大小寫字母)

[0-9a-z]:包含所有的數字和字母(大小寫字母)

例:var str="is this all there is?";

var patt1=/[a-h]/g;

document.write(str.match(patt1));

結果: h,a,h,e,e

1

//[a-z]:查詢所有的字母(大小寫字母)2//

[0-9a-z]:包含所有的數字和字母(大小寫字母)34

var str = "hello@!~-+=123$%^&*()rrr{},.4`56_<>\/\\";56

var patt = /[a-z]/g;

78 console.log(str.match(patt));//

["h", "e", "l", "l", "o", "^", "r", "r", "r", "[", "]", "_", "\"]910

var patt2 = /[a-za-z]/g;

1112 console.log(str.match(patt2));//

(8) ["h", "e", "l", "l", "o", "r", "r", "r"]

1314

var str = "hello world";

15 console.log(str.match(/[hor]/g));//

(4) ["h", "o", "o", "r"]

16 console.log(str.match(/[^hor]/g));//

(7) ["e", "l", "l", " ", "w", "l", "d"]

元字元(metacharacter):擁有特殊含義的字元

.(點):代表任何的字元(除了換行和行結束符) 

\w:任何字母、數字、下劃線

\w:任何非字母、數字、下劃線

\d:任何數字

\d:任何非數字

\s:空白字元

\s:非空白字元

\b:查詢單詞邊界

\b:查詢非單詞邊界

作為了解

\o:查詢null字元

\n:查詢換行符

\f: 查詢分頁符

\r:查詢回車符

\t:查詢製表符

\v:查詢垂直製表符

^n:匹配開頭為n的字串

n$:匹配結尾為n的字串

n+:匹配任何包含至少乙個n的字串

n: 匹配任何包含x個n的字串

n: 匹配至少包含x個n的字串

n:匹配包含x到y個n的字串

n*:匹配任何包含0個或者多個n的字串

n?:匹配任何包含0個或1個n的字串

?=n:匹配任何其後緊接指定字串n的字串

?!n:匹配任何其後沒有緊接字串n的字串 

RegExp物件 正規表示式

正規表示式 regular expression 1.建構函式 var regex new regexp xyz i 2.字面量 var regex xyz i g global,全文搜尋,不新增的話搜尋到第乙個結果停止搜尋 i ingore case,忽略大小寫,預設大小寫敏感 m multipl...

js 正規表示式物件 RegExp

語法 var patt new regexp pattern,modifiers 或更簡單的方法 var patt pattern modifiers 用 來表示表示式 i 修飾符是用來執行不區分大小寫的匹配。g 修飾符是用於執行全文的搜尋 而不是在找到第乙個就停止查詢,而是找到所有的匹配 注意 當...

JS正規表示式 RegExp物件)

regexp物件用於規定在文字中檢索的內容 什麼是regexp?regexp是正規表示式的縮寫 當您檢索某個檔案時,您可以規定某個要檢索的模式來描述要檢索的內容。regexp就是這種模式 定義regexp 通過new關鍵字來定義regexp物件。以下 定義了名為patt的regexp物件,其模式是e...