JavaScript正規表示式

2021-09-24 20:47:22 字數 4520 閱讀 3310

目錄

什麼是正規表示式?

使用正規表示式的目的

正規表示式特點

正規表示式語法

第一種第二種

regexp物件的常用方法

列:使用(var reg=/?/)語法

列:使用var reg=new regexp(pattern)語法

正規表示式的常用萬用字元/ /

列:常用萬用字元練習

正規表示式常用萬用字元

列:[ ]萬用字元練習

量詞表示式

列:量詞練習

正規表示式修飾符

列:修飾符練習

列:驗證email位址格式是否正確

正規表示式是對是對字串操作的一種邏輯公式,用事先定義好的一些特定字元以及特定字元的組合、組成乙個「規則字串」,這個「規則字串」用來表達對字串的一種過濾邏輯。

var reg=/pattern/;
var reg=new regexp(pattern);
var str="this is a book;"

var reg=/this/;

//使用exec(str)方法檢索指定的值 找到返回值

alert(reg.exec(str));

//使用test(str) 檢索是否滿足指定的條件的值 返回true或false

alert(reg.test(str));

var str="this is a book;";

var reg=new regexp('this');

alert(reg.exec(str));//使用exec(str)方法檢索指定的值 找到返回值

alert(reg.test(str));

\d 最少有乙個非數字,找到返回true,沒找到返回false

var phone='1all';

var reg=/\d/;//最少有乙個非數字就返回true 否則返回false

alert(reg.test(phone));//返回真

\s 匹配所有非空白字元

// \w陪陪所有單詞字元,包括0-9 26個英文本母和下劃線

var str="this is a book;";

var reg=/\w/;

alert(reg.exec(str)+'\n'+reg.test(str));//結果:t true

\s匹配所有非空白字元

// \s匹配所有非空白字元

var str = "this is a book;";

var reg = /\s/;

alert(reg.exec(str) + '\n' + reg.test(str));//結果:t true

\b匹配單詞邊界

// \b匹配單詞邊界

var str = "this is a book;";

var reg = /\bs/; //判斷單詞邊界是否有s

alert(reg.exec(str) + '\n' + reg.test(str));//結果:null false

【abc】查詢任意字元 最少滿足1個就為true

//查詢任意字元 最少滿足1個就為true

var str = "this is a book;";

var reg = /[book s]/; //查詢任意字元,滿足個就成立

alert(reg.exec(str) + '\n' + reg.test(str));//結果:s true

查詢任何不在方括號中的字元

//查詢任意不在方括號中的字元

var str = "this is a book;";

var reg = /[^book s]/;

alert(reg.exec(str) + '\n' + reg.test(str));//結果:t true

查詢a到z之間的字元

//查詢a-z之間的字元

var str = "this is a book;";

var reg = /[a-z]/;

alert(reg.exec(str) + '\n' + reg.test(str));//結果:t true

查詢指定的選項

//查詢指定的選項

var str = "this is a book;";

var reg = /thiis|is|a|books/;

alert(reg.exec(str) + '\n' + reg.test(str));//結果:is true

n* 匹配任何包含零個或多個n的字串

//匹配任何包含零個或多個n的字串

var str = "this is a book;";

var reg = /thi*/;

alert(reg.exec(str) + '\n' + reg.test(str)); //結果:thi true

n匹配包含x個n的字串

//匹配包含x個n的字串

var str = "thisis a boooook;";

var reg = /o/;

alert(reg.exec(str) + '\n' + reg.test(str)); //結果:ooo true

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

//n 匹配 包含至少x個n的序列的字串

var str = "thisis a boooook;";

var reg = /o/;

var reg1 = /s/;

alert(reg.exec(str) + '\n' + reg.test(str) + '\n' + reg1.exec(str)); //結果:ooooo true s

n 匹配包含x個或y個n的字串

//n 匹配包含x個或y個n的字串

var str = "thisis a boooook;";

var reg = /o/;

var reg1 = /s/;

alert(reg.exec(str) + '\n' + reg.test(str) + '\n' + reg1.exec(str)); //結果:oooo true s

^n 匹配任何開頭為n的字串

/^n 匹配任何開頭為n的字串

var str = "thisis a boooook;";

var reg = /^c/;

var reg1 = /^t/;

alert(reg.exec(str) + '\n' + reg.test(str) + '\n' + reg1.exec(str)); //結果:null true t

i 執行對大小寫不敏感的匹配

//執行對大小寫不敏感的匹配

var str = "thisis a boooook;book";

var reg = /b/i;

var reg1 = /oo/i;

alert(reg.exec(str) + '\n' + reg.test(str) + '\n' + reg1.exec(str)); //結果:b true oo

g 執行全域性匹配(查詢所有匹配而非在查詢1個後停止查詢)

//g 執行全域性匹配(查詢所有匹配而非在查詢1個後停止查詢)

var str = "thisis a bbbobobook;book";

var reg = /b/g;

var reg1 = /oo/g;

alert(reg.exec(str) + '\n' + reg.test(str) + '\n' + reg1.exec(str)); //結果:b true oo

m 執行多行匹配

//m 執行多行匹配

var str = "thisis a bbbobobook;book";

var reg = /b/m;

var reg1 = /^b/m;

alert(reg.exec(str) + '\n' + reg.test(str) + '\n' + reg1.exec(str)); //結果:b true null

//email位址驗證

var str='[email protected]';

var reg = /^[0-9a-z-]+@[0-9a-z]+\.(com|cn|org)/;

alert(reg.exec(str) + '\n' + reg.test(str) );

//結果:[email protected] true

Javascript正規表示式

這段時間學習js,正好遇到了正規表示式。下面通過使用例項介紹一下正規表示式。正規表示式,又稱正規表示法 常規表示法 英語 regular expression,在 中常簡寫為regex regexp或re 電腦科學的乙個概念。正規表示式使用單個字串來描述 匹配一系列符合某個句法規則的字串。在很多文字...

JavaScript 正規表示式

一 什麼是正規表示式 正規表示式 regular expression 是乙個描述字元模式的物件。測試正規表示式 regexp 物件包含兩個方法 test 和exec 功能基本相似,用於測試字串匹配。test 方法在字串中查詢是否存在指定的正規表示式並返回布林值,如果存在則返回true,不存 在則返...

javascript 正規表示式

正規表示式 regexp物件 主要用於表單驗證 1 建立正規表示式 1 var ret pattern pattern是內容,可以是正規表示式的內容,可以是字元或是其他的內容 2 var rag new regexp pattern 括號內可以是雙引號或者單引號 2 正規表示式的exec方法 reg...