~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
開發工具與關鍵技術:Adobe Dreamweaver && JavaScript
作者:韋永桂
撰寫時間:2020 年04 月 26 日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
一、簡介
正則運算式:又稱規則運算式。英文名為Regular Expression,在代碼中常簡寫為regex、RegExp或RE
正則運算式用于定義一些字串的規則,計算機可以根據正則運算式,來檢查一個字串是否符合規則,可以將字符中符合規則的內容提取出來【語法: var 變數=new RegExp("正則運算式","匹配模式");】使用字面量來創建正則運算式【語法: var 變數=/正則運算式/匹配模式】
使用typeof檢查正則物件,則會回傳object
varreg=new RegExp("a"); 這個運算式可以用來檢查一個字串中是否含有字符a
在建構式中可以傳遞一個匹配模式作為第二個引數【i 忽略大小寫、g 全域匹配】
正則運算式【方法:test()】- 使用這個方法可以用來檢查一個字串中是否符合正則運算式的規則。
如果符合則回傳true,否則回傳false
二、正則運算式
[] 使用中括號表示范圍
[abc] 等價于 a|b|c
[a-z] 表示匹配所有的小寫字母
[A-Z] 表示匹配所有的大寫字母
[A-z] 表示匹配所有的字母(包含大小寫)
[0-9] 表示匹配所有的數字
[^] 除了方括號內的所有字符
^ 表示開頭
$ 表示結尾
三、字串與正則運算式相關的方法
-支持正則運算式的String物件的方法
【方法:split()】
- 把字串分割為字串陣列。
- 該方法可以傳遞一個正則運算式作為引數,這樣方法將會根據正則運算式去拆分
- 該方法即使不指定全域匹配,也會全部拆分字串
【方法:search()】
- 可以搜索字串中是否含有指定內容
- 如果搜索到指定內容,則會回傳第一次出現的索引,如果沒有搜索到到回傳-1
- 它可以接受一個正則運算式作為引數,然后會根據正則運算式去檢索字串
-serach() 只會查找第一個,即使設定全域匹配也沒用
【方法:match()】
- 可以根據正則運算式,從一個字串中將符合條件的內容提取出來
- 默認情況下我們的match只會找到第一個符合要求的內容,找到以后就停止檢索
我們可以設定正則運算式為全域匹配模式,這樣就會匹配到所有的內容
可以為一個正則運算式設定多個匹配模式,且順序無所謂
- match()會將匹配到的內容封裝到一個陣列中回傳,即使只查詢到一個結果
【方法:replace()】
- 可以將字串中指定內容替換為新的內容
- 引數說明:1.被替換的內容 2.新的內容
四、正則運算式語法(量詞)
- 通過量詞可以設定一個內容出現的次數
- 量詞只對它前面一個內容起作用
- {n} 出現n次
- {m,n} 出現m次到n次
- {n,} 出現n次以上
- + 至少出現一次
- * 出現零次或則零次以上
- ? 出現一次或則零次
五、正則運算式語法(元字符)
在正則運算式中\反斜杠,作為轉義字符
若想要匹配字符"."正則運算式為 \.
\\ 表示匹配一個反斜杠\
. 表示匹配任意字符
\w 匹配任意字母、數字、"_" 下劃線è[A-z0-9_]
\W 匹配除了字母、數字、"_" 下劃線è[^A-z0-9_]
\d 匹配數字[0-9]
\D 除了數字[^0-9]的任意字符
\s 匹配空格
\S 匹配除了空格的任意字符
\b 匹配單詞邊界
\B 匹配非單詞邊界。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/58575.html
標籤:JavaScript
上一篇:JavaScript函式總結
下一篇:檔案物件模型總結(DOM)
