我需要查看一个字符串,并查找 - 使用超过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
}
答案 0 :(得分:0)
我认为你问的是如何将多个连字符(-
)与RegEx匹配?如果是这样,这个表达式将起到作用:
/-+/
/
=分隔符
-
=匹配连字符
+
=匹配前一个字符的多次出现
答案 1 :(得分:0)
正则表达式不是计算字符串中出现次数的最佳选择。对于PHP,存在一种名为substr_count()
的方法e.g。
$s = 'stack-overflow - 2014 - new';
if (substr_count($s, '-') >= 2) {
// at least 2 times
}