抓住重复 - PHP中的字母 - 正则表达式

时间:2014-09-20 19:24:05

标签: php regex

我需要查看一个字符串,并查找 - 使用超过1次的字符

$ input =“stack-overflow - 2014 - new”//包含重复字符 - 超过2次

我已经找到了各种非常接近的答案,但并不完全。 是否有一个PHP正则表达式来捕捉这种情况? (我有一个基本的正则表达式知识,但这对我来说太过分了)

$regex=' '; //// that what i need
if (preg_match('/(\w)\1{5,}/', $input)) {
 # Successful match
} else {
 # Match attempt failed
}

2 个答案:

答案 0 :(得分:0)

我认为你问的是如何将多个连字符(-)与RegEx匹配?如果是这样,这个表达式将起到作用:

/-+/

/ =分隔符

- =匹配连字符

+ =匹配前一个字符的多次出现

答案 1 :(得分:0)

正则表达式不是计算字符串中出现次数的最佳选择。对于PHP,存在一种名为substr_count()

的方法

e.g。

$s = 'stack-overflow - 2014 - new';
if (substr_count($s, '-') >= 2) {
    // at least 2 times
}