文法規則計算式,用在字串的符合計算,可以作子字串的搜尋,替換。
\ | ^ | $ | * | + | ? | . | (x) | (?:x) | x(?=y) |
x(?!y) | x|y | {n} | {n,} | {n,m} | [xyz] | [^xyz] | [\b] | \b | \B |
\cX | \d | \D | \f | \n | \r | \s | \S | \t | \v |
\w | \W | \n | \0 | \xhh | \uhhhh |
產生一個文法規則計算式(Regular Expression)的物件,用作文字模式的演算。文法規則計算式有兩種宣告法:
var regex = new RegExp("文法規則計算式" [, "字旗"]);
var literal = /文法規則計算式/[字旗];
使用 RegExp 物件製造器時,字母 ”\” 必須加上脫離字母,也就是寫成”\\”。
字旗可是下述字母的組合:
- g:全字串符合計算。沒設此旗時,只作第一個符合計算。
- i:大小寫視為相同。沒設此旗時,大小寫不相同。
- m:在多行文字作符合計算。
- replace() 是物件 String 的方法,會將字串中符合第一個參數的子字串,替換成第二個參數的字串。
脫離字母,有兩種用途:(一)一般文字母前面加了 \,表示是特別字。(二)特別字母前面加了 \,則以一般文字母處理。
文字行的開始位置。如果設了字旗 m,則每一個斷行,都是一個新的文字行開始位置。
文字行的尾端。如果設了字旗 m,則每一個斷行之前,都是一個文字行尾端。
符合發生 0 次或更多次。
符合發生 1 次或更多次。等於 {1,}。
符合發生 0 次或 1次。將 ? 接在 *, +, ?, {} 之後,會變成不貪心模式,只求最小符合字串。否則為貪心模式,求最大符合字串。
除了 \n \r \u2028 \u2029 的任一字母。[\s\S] 是所有字母的集合,也包括前述換行字碼。
此名為存入括號。計算文法規則 x,符合的子字串存入結果陣列,取值可用 [1], ..., [n] 或用物件的特徵 $1, ..., $9。
計算符合 x,但是不存入結果陣列。
x 符合的條件要加上 x 之後必須接 y。雖然 y 是符合條件之一,但是 y 並不會被替換。
x 符合的條件要加上 x 之後不可接 y。雖然 y 是符合條件之一,但是 y 並不會被替換。
符合 x 或 y 都可以。不限兩個參數,例如 d|e|f|g...。
n 是正整數。符合正好發生 n 次。
n 是正整數。符合發生 n 次或更多次。
n, m 是正整數。符合發生至少 n 次,最多 m 次。
字母集合。符合其中的字母。可用”-”表連續的字母,例如 [i-n] 等於 [ijklmn]。
不屬於字母集合中的字母。
字碼,清除前一字。與下面的不同。
字的邊界,也就是頭尾兩字母,接著空白字元或標點符號者。
不是字的邊界,也就是不接著空白字元或標點符號者。
控制字母,X 由 A 到 Z。
數字,等於 [0-9]。
拉丁字母中的非數字,等於 [^0-9]。
字碼,跳至下一頁。
字碼,跳至新行。
字碼,跳至行首。
單一空白字元,包括空白字,TAB,跳頁,跳行,及獨角碼的空白。等於[\t\n\v\f\r \u00a0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000]。
單一非空白字元。
字碼,tab。
字碼,垂直跳行。
英文大小寫字母,數字,底線”_”。等於 [A-Za-z0-9_]。
字母不屬於英文大小寫字母,數字,底線”_”。等於 [^A-Za-z0-9_]。
n 是正整數,表第 n 個存入括號。將前面第 n 個存入陣列中的符合子字串,當作文法規則。
空字元。其後不要接數字。
ASCII 碼,兩位 16 進位數。
獨角碼,四位 16 進位數。