規則運算式的基本概念

Flash Player 9 以及更新的版本,Adobe AIR 1.0 以及更新的版本

規則運算式可描述字元模式。規則運算式通常會用來驗證文字值是否符合特定模式 (如驗證使用者輸入的電話號碼是否包含正確的位數),或是用來取代符合特定模式的部分文字值。

規則運算式可以很簡單。例如,假定您要確認特定字串與「ABC」相符,或是要以其它文字取代字串中所有的「ABC」。在這種情況下,您可以透過下列規則運算式來定義由字母 A、B、C 依序組成的模式:

/ABC/

請注意,規則運算式常值是以正斜線 (/) 字元加以區隔。

規則運算式的模式也可以很複雜,而且有時看起來含意模糊,如下列與有效電子郵件地址相符的運算式:

/([0-9a-zA-Z]+[-._+&])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}/

大部分情況下,您可以使用規則運算式來搜尋字串中的各種模式,並取代其中一些字元。在這些情況下,您要建立規則運算式物件,並用來做為多種 String 類別方法的其中一個參數。下列 String 類別的方法會將規則運算式當做參數使用:match()replace() search()split()。如需有關這些方法的詳細資訊,請參閱尋找字串中的樣式並取代子字串

RegExp 類別包含下列方法:test()exec()。如需詳細資訊,請參閱搭配字串使用規則運算式的方法

重要概念與術語

下列參考清單包含了與此功能相關的重要術語:

跳脫字元
表示應將接續的字元視為中繼字元,而非以常值字元看待的字元。在規則運算式語法中,反斜線字元 (\) 就是跳脫字元,所以如果反斜線後面接著另一個字元,則該反斜線就是一個特殊程式碼,而不只是一個字元。

旗標
用來指定關於如何使用規則運算式模式的一些選項的字元,例如是否要區分大小寫字元。

中繼字元
在規則運算式模式中具有特殊意義的字元 (不同於實際代表模式中的字元)。

數量詞
表示模式中某個部分應該重複多少次的一個字元 (或多個字元)。例如,數量詞可用來指定美國郵遞區號應該包含 5 或 9 位數字。

規則運算式
用來定義字元模式,以便確認其它字串是否符合該模式,或是應該取代部分字串的程式陳述式。