. 表示的是:除了\n以外的任意的乙個字元
表示的是:範圍 [0-9] 表示的是0到9之間的任意的乙個數字
[a-z] 表示的是:所有的小寫的字母中的任意的乙個
[a-z] 表示的是:所有的大寫的字母中的任意的乙個
[a-za-z] 表示的是:所有的字母的任意的乙個
[0-9a-za-z] 表示的是: 所有的數字或者是字母中的乙個
[.] 就是乙個.
() 分組 提公升優先順序 [0-9]|([a-z])|[a-z]
* 表示的是:前面的表示式出現了0次到多次
[a-z][0-9]* 小寫字母中的任意乙個 後面是要麼是沒有數字的,要麼是多個數字的
+ 表示的是:前面的表示式出現了1次到多次
[a-z][9]+ 小寫字母乙個後面最少乙個9,或者多個9`在這裡插入**片`
? 表示的是:前面的表示式出現了0次到1次,最少是0次,最多1次
表示的是前面的表示式出現了0次到多次 作用和 *一樣
表示的是前面的表示式出現了1次到多次 作用和 +一樣
表示的是前面的表示式出現了0次到1次 作用和 ?一樣
表示的是前面的表示式出現了5次到10次
前面的表示式出現了4次
錯誤寫法***
^ 表示的是以什麼開始,或者是取非(取反) ^[0-9] 以數字開頭 ^[a-z] 以小寫字母開始
[^0-9] 取反,非數字 [^a-z] 非小寫字母
$ 表示的是以什麼結束 [0-9][a-z]$ 必須以小寫字母結束
\d 數字中的任意乙個 \d 非數字中的乙個
\s 空白符中的乙個 \s 非空白符
\w 非特殊符號(字母 數字或下劃線) \w 特殊符號
\b 單詞的邊界
身份證的正規表示式 15位或者18位
([1-9][0-9])([0-9][0-9xx])?
([1-9][0-9])|([1-9][0-9][0-9xx])
郵箱的正規表示式 [email protected]
[0-9a-za-z_.-]+[@][0-9a-za-z_.-]+([.][a-za-z]+)
座機號碼的正規表示式 010-19876754
[0-9][-][0-9]
\d[-]\d
1.通過建構函式建立物件
var reg=new regexp(/\d/); //建立物件
var flag=reg.test("我的**是10086"); //使用test方法測試
console.log(flag);
2.字面量的方式建立物件
var reg=/\d/;
var flag=reg.test("小蘇的幸運數字:888");
console.log(flag);
g 全域性模式匹配
i 忽略大小寫
var str="中國移動:10086,中國聯通:10010,中國電信:10000";
//把裡面所有的數字全部顯示出來
var array=str.match(/\d/g);
console.log(array); //(3) ["10086", "10010", "10000"]
var str = "[email protected],[email protected] [email protected] 2、[email protected] [email protected]...";
var array = str.match(/\w+@\w+\.\w+(\.\w+)?/g);
console.log(array);
//["[email protected]", "[email protected]", "[email protected]", "[email protected]", "[email protected]"]
//提取某個日期中的日
var time = '2019-08-28'
var array = time.match(/(\d)[-](\d)[-](\d)/) //加括號 將匹配到的字串分組
console.log(regexp.$3) //28
//提取郵箱中的使用者名稱部分
var email="[email protected]";
//郵箱的正規表示式
email.match(/([0-9a-za-z.-_]+)[@]([0-9a-za-z-_]+)(([.][a-za-z]+))/)
console.log(regexp.$1)//使用者名稱 shuaiyangtaishuaile
console.log(regexp.$2)//郵箱名 itcast
console.log(regexp.$3)//網域名稱 .com.cn
replace方法接收兩個引數,第乙個引數是原字串中要被替換的,可以是字串(只能替換乙個)或者正規表示式(指定全域性匹配g可以替換所有),第二個引數是要替換成的。
var str="小蘇好帥哦,真的是太帥了,帥,就是真帥";
str=str.replace(/帥/g,"猥瑣");
console.log(str); //小蘇好猥瑣哦,真的是太猥瑣了,猥瑣,就是真猥瑣
trim只能刪除首尾兩端的空格,但是不能刪除字串中間的空格
var str=" 哦買噶的 ,太幸福了 ";
str=str.trim();
console.log("==="+str+"===");//===哦買噶的 ,太幸福了===
var str = " 哦買噶的 ,太幸福了 ";
str = str.replace(/\s+/g, "");
console.log("===" + str + "===");//===哦買噶的,太幸福了===
exec方法接收乙個引數:要進行匹配的字串
在設定全域性匹配的情況下,exec方法每次也只能返回乙個匹配項。多次呼叫該方法,每次exec都會在字串中繼續查詢匹配項,並返回乙個陣列,直到找不到匹配項返回null。
如果不設定全域性匹配,多次呼叫該方法也只能返回該字串中第乙個匹配項。
返回的陣列中,第乙個是字串中的匹配資訊。
var str = "中國移動:10086,中國聯通:10010,中國電信:10000";
js 正規表示式2
對於某些特殊的字元,我們 必須轉義一下才可以使用。注意一點,我們使用那些需要轉義的字元是通過 相應的字元來構成的,記住是 而不也是 特別字元 說明 匹配輸入字串的結尾位置。如果設定了 regexp 物件的 multiline 屬性,則 也匹配 n 或 r 要匹配 字元本身,請使用 標記乙個子表示式的...
JS筆記 正規表示式
正規表示式用於定義一些字串的規則,計算機可以根據正規表示式,來檢查乙個字串是否符合規則,獲取將字串中符合規則的內容提取出來。建立正規表示式物件 語法 var 變數 new regexp 正規表示式 匹配模式 使用typeof檢查正則物件,會返回object。在建構函式中可以傳遞乙個匹配模式作為第二個...
js數字正規表示式,js小數正規表示式
js數字正規表示式,js小數正規表示式 是否為數字 僅正數 包括正整數 正小數 0 param value returns function isnumber value 是否為所有數字 正數 負數 包括整數 小數 0 param value returns function isnumberall...