如何检测字符串中输入多个空格键的所有空格。
换句话说,我不想发现这个:
" "
但是比这更重要的事情。例如:
" ", " ", etc...
答案 0 :(得分:2)
您可以使用正则表达式:
$regex = '~\s{2,}~';
preg_match($regex, $str);
\s
包括空格,制表符和新行。如果您想只空格,可以将$regex
更改为:
$regex = '~ {2,}~';
如果要从字符串中删除多余的空格,可以使用:
$str = 'hello there, world!';
$regex = '~ {2,}~';
$str = preg_replace($regex, ' ', $str);
echo $str;
输出:
hello there, world!
答案 1 :(得分:0)
您可以使用:
$input = "foo bar baz saz";
if(preg_match_all('/\s{2,}/',$input,$matches)) {
var_dump($matches);
}
输出:
array(1) {
[0]=>
array(2) {
[0]=>
string(2) " "
[1]=>
string(3) " "
}
}
\s
表示空格,包括空格,垂直制表符,水平制表符,返回格式,换行符,换页符。
如果您只想匹配普通空格,可以使用正则表达式:
if(preg_match_all('/ {2,}/',$input,$matches)) {