javascript正則檢測連續重複字符串

元字符  \1~\9  作用:用來表示前面以匹配的字符或分組的一個引用

//一般情況,當我們想匹配任意兩個相同的字符(複雜一點就是兩個相同的分組)時,往往可以藉助下面的寫法
//說明:
//(\w)用來匹配任何除了換行和製表符的字符, 而\1是對(\w)的一個引用, 所以你可以理解成: (\w)\1 就是(\w)(\w)
//但是,
//(\w)\1 和 (\w)(\w)的不同之處在於,  (\w)(\w)表示任意兩個連續的字符, 比如Ac, MM, K9, 都可以,
// 但(\w)\1只能是AA, CC, 99 這樣連續相同的字符

//所以, 你可以這樣理解, \1 是對(\w)的一個實例化引用, 當(\w) 匹配到A時, \1 被表達成A, 當(\w)匹配9時, \1 被表示成9

//說了這麼多, 可能有些廢話, 下面這個例子就很好理解了
var str = "AA Am 99";
var reg = /(\w)\1/g;
str.match(reg);//輸出: ["AA", "99"]

同理

function containsRepeatingLetter(str) {
	return /([a-zA-Z])\1/.test(str);
}

給定字符串 str,檢查其是否包含連續重複的字母(a-zA-Z),包含返回 true,否則返回 false
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章