摘要:對象對象對象表示正則表達(dá)式,它是對字符串執(zhí)行模式匹配的強(qiáng)大工具。查找以十六進(jìn)制數(shù)規(guī)定的字符。支持正則表達(dá)式的對象的方法方法描述檢索與正則表達(dá)式相匹配的值。替換與正則表達(dá)式匹配的子串。
RegExp對象 RegExp 對象
RegExp 對象表示正則表達(dá)式,它是對字符串執(zhí)行模式匹配的強(qiáng)大工具。
直接量語法/pattern/attributes創(chuàng)建 RegExp 對象的語法
new RegExp(pattern, attributes);參數(shù)
參數(shù) pattern 是一個(gè)字符串,指定了正則表達(dá)式的模式或其他正則表達(dá)式。 參數(shù) attributes 是一個(gè)可選的字符串,包含屬性 "g"、"i" 和 "m",分別用于指定全局匹配、區(qū)分大小寫的匹配和多行匹配。ECMAScript 標(biāo)準(zhǔn)化之前,不支持 m 屬性。如果 pattern 是正則表達(dá)式,而不是字符串,則必須省略該參數(shù)。返回值
一個(gè)新的 RegExp 對象,具有指定的模式和標(biāo)志。如果參數(shù) pattern 是正則表達(dá)式而不是字符串,那么 RegExp() 構(gòu)造函數(shù)將用與指定的 RegExp 相同的模式和標(biāo)志創(chuàng)建一個(gè)新的 RegExp 對象。
如果不用 new 運(yùn)算符,而將 RegExp() 作為函數(shù)調(diào)用,那么它的行為與用 new 運(yùn)算符調(diào)用時(shí)一樣,只是當(dāng) pattern 是正則表達(dá)式時(shí),它只返回 pattern,而不再創(chuàng)建一個(gè)新的 RegExp 對象。
拋出SyntaxError - 如果 pattern 不是合法的正則表達(dá)式,或 attributes 含有 "g"、"i" 和 "m" 之外的字符,拋出該異常。 TypeError - 如果 pattern 是 RegExp 對象,但沒有省略 attributes 參數(shù),拋出該異常。修飾符
修飾符 描述 i 執(zhí)行對大小寫不敏感的匹配。 g 執(zhí)行全局匹配(查找所有匹配而非在找到第一個(gè)匹配后停止)。 m 執(zhí)行多行匹配。方括號
方括號用于查找某個(gè)范圍內(nèi)的字符:
表達(dá)式 描述 [abc] 查找方括號之間的任何字符。 [^abc] 查找任何不在方括號之間的字符。 [0-9] 查找任何從 0 至 9 的數(shù)字。 [a-z] 查找任何從小寫 a 到小寫 z 的字符。 [A-Z] 查找任何從大寫 A 到大寫 Z 的字符。 [A-z] 查找任何從大寫 A 到小寫 z 的字符。 [adgk] 查找給定集合內(nèi)的任何字符。 [^adgk] 查找給定集合外的任何字符。 (red|blue|green) 查找任何指定的選項(xiàng)。元字符
元字符(Metacharacter)是擁有特殊含義的字符:
元字符 描述 . 查找單個(gè)字符,除了換行和行結(jié)束符。 w 查找單詞字符。 W 查找非單詞字符。 d 查找數(shù)字。 D 查找非數(shù)字字符。 s 查找空白字符。 S 查找非空白字符。 匹配單詞邊界。 B 匹配非單詞邊界。