JavaScript RegExp 物件
RegExp:是正規表示式(regular expression)的簡寫。
完整 RegExp 物件參考手冊
請查看我們的 JavaScript RegExp 物件的參考手冊,其中提供了可以與字串物件一同使用的所有的屬性和方法。
這個手冊包含的關於每個屬性和方法的用法的詳細描述和實例。
什麼是 RegExp?
正規表示式描述了字元的模式物件。
當您檢索某個文字時,可以使用一種模式來描述要檢索的內容。 RegExp 就是這種模式。
簡單的模式可以是一個單獨的字元。
更複雜的模式包括了更多的字符,並可用於解析、格式檢查、替換等等。
您可以規定字串中的檢索位置,以及要檢索的字元類型,等等。
語法
var patt=new RegExp(pattern,modifiers);
#或更簡單的方法
var patt=/pattern/ modifiers;
#或更簡單的方法
var patt=/pattern/ modifiers;
模式描述了一個表達式模型。
修飾詞(modifiers)描述了檢索是否是全域,區分大小寫等。
注意:當使用建構子建立正規物件時,需要常規的字元轉義規則(在前面加反斜線 \)。例如,以下是等價的:
var re = new RegExp("\w+"); var re = /\w+/;
RegExp 修飾符
修飾符用於執行不區分大小寫和全文的搜尋。
i - 修飾符是用來執行不區分大小寫的匹配。
g - 修飾符是用來執行全文的搜尋(而不是在找到第一個就停止尋找,而是找到所有的匹配)。
實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <script> var str = "Visit php.cn"; var patt1 = /php.cn/i; document.write(str.match(patt1)); </script> </body> </html>
運行實例»
點擊"運行實例" 按鈕查看線上實例
實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <script> var str="Is this all there is?"; var patt1=/is/g; document.write(str.match(patt1)); </script> </body> </html>
運行實例»
點擊"運行實例" 按鈕查看線上實例
實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <script> var str="Is this all there is?"; var patt1=/is/gi; document.write(str.match(patt1)); </script> </body> </html>
運行實例»
#點擊"運行實例" 按鈕查看線上實例
test()
test()方法搜尋字串指定的值,根據結果並傳回真或假。
下面的範例是從字串中搜尋字元"e" :
實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <script> var patt1=new RegExp("e"); document.write(patt1.test("The best things in life are free")); </script> </body> </html>
##執行實例»點擊"運行實例" 按鈕查看線上實例
當使用建構函式創造正規物件時,需要常規的字元轉義規則(在前面加反斜線\)
實例
##<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <script> var str = 'php'; var patt1 = new RegExp('\w', 'g'); // 有转义作为正则表达式处理 var patt2 = new RegExp('\w', 'g'); // 无转义作为字符串处理 var patt3 =/\w+/g; // 与 patt1 效果相同 document.write(patt1.test(str)) //输出 true document.write("<br>") document.write(patt2.test(str)) //输出 false document.write("<br>") document.write(patt3.test(str)) //输出 true </script> </body> </html>
運行實例»點擊"運行實例"按鈕查看線上實例
#exec()exec() 方法檢索字串中的指定值。傳回值是被找到的值。如果沒有發現匹配,則傳回 null。 下面的範例是從字串中搜尋字元"e" :
實例
點擊"運行實例" 按鈕查看線上實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <script> var patt1=new RegExp("e"); document.write(patt1.exec("The best things in life are free")); </script> </body> </html>##執行實例»
點擊"運行實例" 按鈕查看線上實例
#