意義
關於正規表示式,我們為什麼要用正規表示式呢?生活中會遇到填寫**號碼,郵件的,這些計算機可以根據正規表示式,來檢查乙個字串是否符合規則,或者將符合規則的內容提取出來,也就是可以判斷我們輸入是否符合規範
用法
使用建構函式建立正規表示式
正規表示式是乙個物件
var reg=new regexp(「正規表示式」,「匹配模式」);
在建構函式中 可以傳遞乙個匹配模式作為第二個引數(可以是i 忽略大小寫 ,g 全域性匹配模式)
var reg2=
newregexp
("a"
,"i");
//此時a就是正規表示式
//這個正規表示式可以用來判斷乙個字串是否含有a
var str=
"a";
var result=reg2.
test
(str)
;console.
log(result)
;//true
正規表示式方法test()
可以用來檢測這個方法是否符合正規表示式的規則
如果符合會返回true,否則會返回false
使用字面量來建立正規表示式
語法變數var 變數=/正規表示式/匹配模式
使用字面量建立會更加簡單,使用建構函式建立會更加靈活
var reg =
/a/i
;console.
log(reg.
test
("a"))
;//true
//以上是檢查是否含有字元a
規則
1.建立乙個正規表示式檢查是否有a或者b
使用|表示或者
reg =
/a|b/
; console.
log(reg.
test
("ac"))
; console.
log(reg.
test
("bcd"))
; console.
log(reg.
test
("ab"))
;
2.建立乙個正規表示式檢查是否有字母
同時中括號裡的內容也是或者的意思
但是可以簡寫[a-z]
var reg4 =
/[a-z]/
;//表示任意小寫字母
console.
log(reg4.
test
("h"))
;var reg5 =
/[a-z]/i
;//任意字母,不區分大小寫 或者[a-z]//也可以表示任意字母
console.
log(reg5.
test
("a"))
;
3.檢查乙個字母符中是否含有abc或者adc或者aec
reg5 =
/abc|adc|aec/
; console.
log(reg5.
test
("abd"))
;//或者
reg6 =
/a[bde]c/i
; console.
log(reg6.
test
("adg"))
;
4.建立乙個正規表示式是否有aaa
var reg1=
/aaa/
;var result1=reg1.
test
("aababbcc");
console.
log(result1)
;
但是如果a數量多,就可以使用量詞,通過量詞可以設定乙個內容出現的次數
正好出現n次
出現m到n次
出現m次以上
+至少乙個,相當於
*代表0個或者多個 相當於有沒有都可以
? 表示0個或者乙個,相當於;
var reg2=
/a/;
//表示連續的3個a
console.
log(reg2.
test
("aabc"))
;//如果判斷abababa
var reg3=
/ab/
; console.
log(reg3.
test
("abababbb"))
;//true
var reg6=
/b/;
console.
log(reg6.
test
("bbbb"))
;//如果有三個連續的b就可以
5指定出現次數
var reg7=
/abc/
;//這裡的意思是ac
console.
log(reg7.
test
("abc"))
;var reg8=
/abc/
;//意思是b需要3次以上
console.
log(reg8.
test
("abbbbbc"))
;reg9=
/ab+c/
;//意思是b至少出現一次
console.
log(reg9.
test
("abbbc"))
;reg10=
/ab*c/
;console.
log(reg10.
test
("ac"))
;
6檢查是否以指定字元結尾
//檢查乙個字串是否以a開頭
//^表示開頭
//$表示結尾
reg11=
/a/;
//但是這樣是表示字元裡是否有a
console.
log(reg11.
test
("abc"))
; reg12=
/^a/
;//匹配開頭的a
console.
log(reg12.
test
("bsa"))
; reg12=
/a$/
;//表示結尾是否有a,匹配結尾的a
console.
log(reg12.
test
("sdvbga"))
;//如果需要以a開頭 或者 以a結尾
reg14=
/^a|a$/
; console.
log(reg14.
test
("ahgfua"))
;//true
console.
log(reg14.
test
("hhjja"))
;//true
7.建立乙個正規表示式是否是乙個手機號 合法的手機號
//手機號規則 11位
//第一位是1
//第二位 不能是0,1,2,是3-9任意數字
//第三位以後任意數字9個
//^1[3-9][0-9]$ $表示他之後不能再有其他內容
var phone=
"13456677767"
;var reg15=
/^1[3-9][0-9]$/
;//如果寫成了/[3-9][0-9]/就表示去字串裡找,是否有字串 gdrhth13456677767bfnht
//但是我們要求不僅有,並且只能是乙個手機號
console.
log(reg15.
test
(phone)
);
js中的正規表示式
d 非負整數 正整數 0 0 9 1 9 0 9 正整數 d 0 非正整數 負整數 0 0 9 1 9 0 9 負整數 d 整數 d d 非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 正浮點數 d d 0 0 非正浮點數 負浮點數 ...
JS中的正規表示式
在電腦科學中,是指乙個用來描述或者匹配一系列符合某個語法規則的字串的單個字串。在很多文字編輯器或其他工具裡,正規表示式通常被用來檢索或替換那些符合某個模式的文字內容。正規表示式驗證一系列有規律的表示式 match 和replace replace 方法返回根據正規表示式進行文字替換後的字串的複製。語...
JS中的正規表示式
正規表示式是一種可以用於模式匹配和替換的強有力的工具 1.基本語法 1 元字元 以及 元字元規定其前導字元必須在目標物件中連續出現一次或多次 fo 因為上述正規表示式中包含 元字元,表示可以與目標物件中的 fool fo 或者 football 等在字母f後面連續出現乙個或多個字母o的字串相匹配。元...