RegExp對象
正則表達式是用來描述字符的圖案的物體。
正則表達式用來進行模式匹配和"search-and-replace"文本的功能。
句法
/ pattern / modifiers ;
例
var patt = /w3ii/i
為例進行了說明:
- / w3ii / i是正則表達式。
- w3ii是一個模式(to be used in a search) 。
- i為改性劑(modifies the search to be case-insensitive) 。
對於一個正則表達式的教程,請閱讀我們的JavaScript的RegExp教程 。
修飾符
修飾符用於執行不區分大小寫和全局搜索:
修改 | 描述 |
---|---|
i | 執行區分大小寫的匹配 |
g | 執行全局匹配(find all matches rather than stopping after the first match) |
m | 執行多行匹配 |
括號
支架用於查找字符的範圍:
表達 | 描述 |
---|---|
[abc] | 查找方括號之間的任何字符 |
[^abc] | 找不到括號之間的任何字符 |
[0-9] | 查找方括號之間的任意數字 |
[^0-9] | 查找不括號之間的任何數字 |
(x|y) | 查找指定的任何替代品 |
元字符
元字符是有特殊含義的字符:
元字符 | 描述 |
---|---|
。 | 查找單個字符,除了換行符或行結束 |
\ W | 查找單詞字符 |
\ W | 查找非單詞字符 |
\ D | 查找數字 |
\ D | 查找非數字字符 |
\ S | 查找空白字符 |
\ S | 查找非空白字符 |
\ b | 找到匹配一個單詞的開始/結束 |
\乙 | 找到匹配不是在一個單詞的開頭/結束 |
\ 0 | 查找NULL字符 |
\ n | 找到一個新的行字符 |
\F | 查找換頁符 |
\ r | 查找回車符 |
\ t | 查找製表符 |
符\ v | 查找垂直製表符 |
\ XXX | 查找八進制數XXX指定的字符 |
\ XDD | 查找十六進制數DD指定的字符 |
為\ uXXXX | 查找十六進制數XXXX規定的Unicode字符 |
量詞
量詞 | 描述 |
---|---|
n+ | 匹配包含至少一個n的任何字符串 |
n* | 匹配包含零個或多個n個任意字符串 |
n? | 匹配包含零個或一個n個任意字符串 |
n{X} | 匹配包含的序列的字符串X n的 |
n{X,Y} | 匹配包含X與Y序列的字符串n的 |
n{X,} | 匹配包含至少X的序列的字符串n的 |
n$ | 匹配有n任何字符串在它的結束 |
^n | 匹配有n任何字符串在它的開始 |
?=n | 匹配後跟指定字符串n任何字符串 |
?!n | 匹配後面沒有一個特定的字符串n任何字符串 |
RegExp對象屬性
屬性 | 描述 |
---|---|
constructor | 返回創建RegExp對象的原型功能 |
global | 檢查是否"g"修改設置 |
ignoreCase | 檢查是否"i"修改設置 |
lastIndex | 指定索引處開始進行下一場比賽 |
multiline | 檢查是否"m"修改設置 |
source | 返回正則表達式模式的文本 |
RegExp對象的方法
方法 | 描述 |
---|---|
compile() | 棄用1.5版本。 編譯正則表達式 |
exec() | 試驗在一個字符串匹配。 返回的第一場比賽 |
test() | 試驗在一個字符串匹配。 返回true或false |
toString() | 返回正則表達式的字符串值 |