RegExp 對象表示正則表達式,它是對字符串執行模式匹配的強大工具。
- 直接量語法:/pattern/attributes
- 創建RegExp對象的語法:new RegExp(pattern, attributes);
- 參數
- 參數 pattern 是一個字符串,指定了正則表達式的模式或其他正則表達式。
- 參數 attributes 是一個可選的字符串,包含屬性 "g"、"i" 和 "m",分別用于指定全局匹配、不區分大小寫的匹配和多行匹配。ECMAScript 標準化之前,不支持 m 屬性。如果 pattern 是正則表達式,而不是字符串,則必須省略該參數。
- 返回值
- 一個新的 RegExp 對象,具有指定的模式和標志。如果參數 pattern 是正則表達式而不是字符串,那么 RegExp() 構造函數將用與指定的 RegExp 相同的模式和標志創建一個新的 RegExp 對象。
- 如果不用 new 運算符,而將 RegExp() 作為函數調用,那么它的行為與用 new 運算符調用時一樣,只是當 pattern 是正則表達式時,它只返回 pattern,而不再創建一個新的 RegExp 對象。
正則表達式字面量與使用構造函數的場景比較:
- 正則表達式字面量在腳本加載后編譯。若你的正則表達式是常量,使用這種方式可以獲得更好的性能。
- 使用構造函數,提供了對正則表達式運行時的編譯。當你知道正則表達式的模式會發生改變, 或者你事先并不了解它的模式或者是從其他地方(比如用戶的輸入),得到的代碼這時比較適合用構造函數的方式。
正則表達式中:
方括號用于查找某個范圍內的字符:
Paste_Image.png
元字符是擁有特殊含義的字符:
Paste_Image.png
量詞:
Paste_Image.png
Paste_Image.png