基础 - 匹配连续出现次数

  • 作者:KK

  • 发表日期:2017.6.11


要点速读

  1. b{2,3}可以匹配abbc里的“bb”但不能匹配abc

  2. 在指定内容的后面设定花括号说明要匹配的次数,{2,3}表示匹配2到3次,所以abc的b出现次数小于2就不匹配

  3. b{2,}表示至少出现2次以上,不限最高次数

  4. +号只是1次或多次,2次或多次,3次或多次,N次到M次就要靠花括号了

  5. {,4}就是0次到4次


JS代码

//2到3次
console.log('abbc'.match( /b{2,3}/ )[0]); // bb
console.log('abbbc'.match( /b{2,3}/ )[0]); // bbb

//字符串少于2次
console.log('abc'.match( /b{2,3}/ )); // null

//2次到多次
console.log('abbbbbbbc'.match( /b{2,}/ )[0]); // bbbbbbb

//1次到3次
console.log('abc'.match( /b{1,3}/ )[0]); // b

PHP代码

preg_match('#b{2,3}#', 'abbc', $matchResult1);
preg_match('#b{2,3}#', 'abbbc', $matchResult2);
preg_match('#b{2,3}#', 'abc', $matchResult3);
preg_match('#b{2,}#', 'abbbbbbbc', $matchResult4);
preg_match('#b{1,3}#', 'abc', $matchResult5);

header('Content-type:text/plain');
print_r([
	$matchResult1[0], // bb
	$matchResult2[0], // bbb
	$matchResult3, // 空数组,失败
	$matchResult4[0], // bbbbbbb
	$matchResult5[0], // b
]);