正規表示式:規則表示式,主要用於規定字串的出現規則
通過正則指定特定字串出現的規則,去匹配某些字串,如果匹配成功,就可以得到結果
關鍵字正文:abc
語法糖:
var reg = /abc/;
建構函式
var reg = new regexp("abc");
>
>
charset
="utf-8"
>
>
title
>
head
>
>
>
var str =
'那天我去了她家,我對她說你家真大'
;//宣告乙個正則
var reg =
/我/;
var res = reg.
test
(str)
;alert
(res)
;script
>
body
>
html
>
. 任意字元 換行除外
\ 轉義 \.普通的點
\d 數字
\w 數字 字母 下劃線
\s 空字元 空格
\d 非數字
\w 非 數字字母下劃線
\s 非空
注意:用來修飾 元字元 修飾時前面乙個元字元
需要完整匹配 乙個字元 從開頭到結束 每一位規則 數量規則
^匹配開頭
$匹配結束
//必須是 小寫字母a開頭 總共是 4-8位數字字母_
var reg = /^\w$/;
var a = 's74935';
var b= 'a23845675493821';
var c= 'a23456';
alert(reg.test(a)); //false
alert(reg.test(b));//false
alert(reg.test(c));//true
備選字符集 匹配一位的 可以在中括號寫 這一位可能出現的多個字元
如果這一位的備選字元是連續的 比如 a-z a-z 0-9可以用 -連線
//必須是 大寫字母a-z開頭 總共是 4-8位數字字母_
var reg = /^[a-z]\w$/;
var a = "a28248";
var b = "a34546";
var c = "f468354695879689";
alert(reg.test(a)); //true
alert(reg.test(b)); //false
alert(reg.test(c)); //false
//必須是 大寫字母a-z或者_或者1-7開頭 總共是 4-8位數字字母_
var reg = /^[a-z_1-7我]\w$/; 首字母可以是a-z或者_或者1-7或者我
() 分組 將幾位作為乙個完整的規則
需求:有乙個字串 結束 必須是三位 abc出現一次 或者abc沒有
使用場景:多位字元需要被修飾符修飾 (量詞),需要加()
var reg = /^\w(abc)?$/
| 選擇 或
字串結尾 可以是 a或b
var reg =/^\w[acd457]a|c$/;
var str = 'c';
alert(reg.test(str));//true
錯誤原因:js 將 | 兩邊作為兩個選擇 規則就變成了 可以是 \w[acd457]a 或者 c
怎麼解決:用()分組解決
var reg =/^\w[acd457](a|c)$/;
注意:選擇 一般都會伴隨著分組
備選字符集取反 [^] 取反
[^abc] 除了abc的任意字元
關鍵字
i ignore 忽略大小寫
/[a-z]/i; a-za-z
g global 全域性匹配 不會只找到第乙個復合條件的字元就立即返回,繼續查詢
/\w/g
注意: 關鍵字是用來修飾 正則物件的 寫在正則的後面
如何匹配字串開頭和結尾的空格
var reg = /^\s*|\s*$/;
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 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 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...