js正則匹配

2021-08-25 18:50:24 字數 655 閱讀 5170

/abc/.test(function());

這種匹配很奇怪,test(str)函式本來應該傳遞字串的,經我測試,我發現如上寫法居然也可以,並返回true,換了幾種別的測試,總結如下:

{}裡只要有abc的存在都可以匹配,只要不是以數字開頭都可以,用來匹配屬性和方法名挺好使的

replace(regexp/substr,replacement)

重點是第二個引數,它可以是字串,也可以是函式,replacement 中的 $有特殊的含義,所以沒事別亂寫

$1、$2、...、$99 與 regexp 中的第 1 到第 99 個子表示式相匹配的文字。

$& 與 regexp 相匹配的子串。

$` 位於匹配子串左側的文字。

$' 位於匹配子串右側的文字。

$$ 直接量符號。

如果是函式,function($0, $1, $2, $3, ...){}一般是這樣的形式,然後在函式體中可以用$1獲取到第乙個匹配段,$0表示匹配的整體,而不是捕獲組的,舉個例子:

"abc".replace(/(c)/g, function($0, $1))

這樣c就會替換成大寫了

js 正則匹配

isnumber 是否為數字 regexps.isnumber d d isint 是否為整形 regexps.isint d istime 是否為時間格式 regexps.istime d d d s d d d isdate 是否為日期格式 regexps.isdate d d d isemai...

js正則匹配

var childnodename childnodename val 自定義name只能輸入數字 字母或漢字 if childnodename var regex1 a za z a za z0 9 字母數字,字母開頭 var regex3 a za z0 9 字母數字下劃線 var regex4...

js正則匹配

與大多數程式語言相同,正規表示式裡使用 作為轉義字元,這就可能造成反斜槓困擾。假如你需要匹配文字中的字元 那麼使用程式語言表示的正規表示式裡將需要4個反斜槓 第乙個和第三個用於在程式語言裡將第二個和第四個轉義成反斜槓,轉換成兩個反斜槓 後再在正規表示式裡轉義成乙個反斜槓用來匹配反斜槓 這樣顯然是非常...