看到的使用的正規表示式練習:
ps:本文參考李炎恢js筆記
1.正規表示式:描述字元模式物件,es的regrxp類表示正規表示式。string和regexp都定義了使用正規表示式進行強大的模式匹配和文字檢索與替換的函式。
2.建立正規表示式的兩種方法(1)通過new regexp物件 var box = new regexp('box')//第乙個引數字串
var box = new regexp('box','[igm]')//第二個引數可選模式修飾符
i表示忽略大小寫 g表示全域性匹配 m表示多行匹配
(2)通過字面量形式 var pattern = /box/[igm可選] 含義同上
個人感覺字面量形式省時省力 推薦
3.測試正規表示式有兩種方法 (1)test 在字串中測試模式匹配,返回true或者false
(2)exec 在字串中執行匹配搜尋,返回結果陣列
var pattern = /box/i;
var str = 'this is a box';
alert(pattern.test(str)); //true
alert(pattern.exec(str));//匹配了返回陣列,如果沒有找到就為null
4.使用字串的正規表示式方法
match(pattern) 返回pattern中的子串或者null
replace(pattern) 用replacement替換pattern
search(pattern) 返回匹配到的pattern在字串中的開始位置,沒有返回-1
split(pattern) 返回字串按指定pattern拆分的陣列
var pattern = /box/ig;
var str = 'this is a box! this is a box!'
str.match(pattern) 匹配到box box
str.search(pattern) 返回10 //search找到即返回 無需g
str.replace(pattern,'tom') this is a tom! this is atom!
str.split(/\s/ig); this,is,a,box,this,is,a,box
5.regexp物件靜態屬性(由於不經常用到,所以直接截圖複製)
6.正規表示式元字元是包含特殊意義的字元,可以用於控制匹配模式的方式。
. (符號.) 匹配除了換行符外的任意字元
[a-z0-9] 匹配括號字符集中的任何字元
[^a-z] 匹配非括號中的任意字元//包括但是不僅限於a-z只是用於了解方便
\d 匹配數字
\d 匹配非數字
\w 匹配字母數字下劃線
\w 匹配非字母數字下劃線
\s 匹配空格
\s 匹配非空格
錨字元類:
^行首匹配 注意與[^]的區別 ^[a-z]表示以a-z字母開頭 [^a-z]表示非a-z中的字元 ^乙個在裡面乙個在外面
$行尾匹配
x? 匹配0個或者1個x
x* 匹配任意個x
x+ 匹配至少乙個x
(xyz)+ 匹配至少乙個組合(xyz)
x 匹配最少m個,最多n個
a|b|c 匹配a,b,c中的任意乙個
()用於分組
$n或者\n 匹配第n個分組中的內容
以下不常用的用截圖表示
示例用截圖表示:
正規表示式 1 初識正規表示式
簡單地說,正規表示式就是一套處理字串的規則和方法,以行為單位對字串進行處理,通過特殊的符號的輔助,我們可以快速的過濾,替換某些特定的字串。運維工作中,會有大量訪問日誌,錯誤日誌,大資料。如何能夠快速的過濾出我們需要的內容,這就需要正規表示式。awk,sed,grep egrep 三劍客要想能工作的更...
正規表示式初識
用來指定乙個字元集合 字元直接是 或 的關係,不是乙個特定的字串,跟 abc 不同 abc a z 在字符集中,元字元 不起作用 abc abc 元字元 在字串尾不起作用 abc 就是普通字元。元字元在字符集首表示匹配補集,abc 就是匹配除了a,b,c以外的字元。匹配行首,位於字串首。制定規則re...
正規表示式初識
正規表示式 為轉義如 表示.郵箱匹配 grep e 0 9a za z 0 9a za z a za z a.txt 查詢郵箱 a z 所有小寫字母 a z 所有大寫字母 0 9 所有數字 0 9 所有非數字 表達取反 0 9 a z 0個或多個小寫字母 a z 至少出現一次小寫字母 a z 出現0...