JavaScript正則運算式總結
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
開發工具與關鍵技術:Adobe Dreamweaver JavaScript
作者:黃富滔
撰寫時間:2020年4月26日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1、正則運算式簡介(內建物件)
-正則運算式是什么?正則運算式是匹配模式,一般用于匹配字符或者匹配位置,意思就是設定文本規則的代碼。例如某個登錄頁面中,登錄賬號只允許輸入數字,其他任何字符都是不允許輸入的,這就是正則運算式的作用。
-正則運算式用于對字串模式匹配和檢索替換,是對字串模式匹配的強大工具
-英文名為Regular Expression,在代碼中常簡寫為regex、RegExp或RE
2、正則運算式的語法
①用建構式創建
var 變數=new RegExp("正則運算式","匹配模式");
②用字面量進行創建(建議使用)
var 變數=/正則運算式/匹配模式
- 使用字面量的方法創建更加簡單
- 使用建構式創建更加靈活
3、修飾符
① i 不區分字母的大小寫
② g 全域匹配
4、一些特殊元字符
| 表示或者的意思 var reg=/a|b/;
^ 表示除了的意思或者檢測字串中是否以某個字母開頭 例如:[^] 除了方括號內的所有字符 或 reg=/^a$/; 檢查一個字串中是否以a開頭
$ 表示結尾
. 表示匹配任意字符 var reg=/./;
\ 表示轉移字符 var reg=/\./; 意思是匹配字符“. ”
\W 匹配除了字母、數字、"_" 下劃線 [^A-z0-9_]
\d 匹配數字[0-9]
\D 除了數字[^0-9]的任意字符
\s 匹配空格 reg=/\s/
\S 匹配除了空格的任意字符
\b 匹配單詞邊界
\B 匹配非單詞邊界。
5、方括號 :用于檢測某個范圍內的字符
① [] 使用中括號表示范圍
② [abc] 等價于 a|b|c
③ [a-z] 表示匹配所有的小寫字母
④ [A-Z] 表示匹配所有的大寫字母
⑤ [A-z] 表示匹配所有的字母(包含大小寫)
⑥ [0-9] 表示匹配所有的數字
6、量詞:
- 通過量詞可以設定一個內容出現的次數
- 量詞只對它前面一個內容起作用
① {n} 出現n次 reg=/a{3}/;
② {m,n} 出現m次到n次 reg=/ab{2,4}c/;
③ {n,} 出現n次以上 reg=/ab{2,}c/;
④ + 至少出現一次 reg=/ab+c/;
⑤ * 出現零次或則零次以上 reg=/ab*c/;
⑥ ? 出現一次或則零次 reg=/ab?c/;
7、JavaScript字串與正則運算式相關的方法
- 支持正則運算式的String物件的方法
語法: var 變數名=String物件名.支持正則運算式的String物件的方法(正則運算式);
例如:var str="1h3h5h6u6n8b6f5A4N5N6";
var result=str.split(/[a-z]/i);
① split()
- 把字串分割為字串陣列。
- 該方法可以傳遞一個正則運算式作為引數,這樣方法將會根據正則運算式去拆分
- 該方法即使不指定全域匹配,也會全部拆分字串
②search()
- 可以搜索字串中是否含有指定內容
- 如果搜索到指定內容,則會回傳第一次出現的索引,如果沒有搜索到到回傳-1
- 它可以接受一個正則運算式作為引數,然后會根據正則運算式去檢索字串
- serach() 只會查找第一個,即使設定全域匹配也沒用
③macth()
- 可以根據正則運算式,從一個字串中將符合條件的內容提取出來
- 默認情況下我們的macth只會找到第一個符合要求的內容,找到以后就停止檢索
我們可以設定正則運算式為全域匹配模式,這樣就會匹配到所有的內容
可以為一個正則運算式設定多個匹配模式,且順序無所謂
- match()會將匹配到的內容封裝到一個陣列中回傳,即使只查詢到一個結果
④replace()
- 可以將字串中指定內容替換為新的內容需要傳遞兩個引數,
- 引數說明:
(1).用正則運算式寫出被替換的內容
(2).新的內容
(3).要替換的內容與新內容用逗號隔開
-正則運算式相關的方法
.test()
-用來檢測字串中是否符合正則運算式的規則
如果符合則回傳true,否則回傳false
例如: var str="SDFSDFa";
Console.log(reg.test(str));
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/57654.html
標籤:JavaScript
下一篇:JavaScript BOM
