如何在PHP中检测空白?

时间:2010-08-28 02:16:39

标签: php

如何检测字符串中输入多个空格键的所有空格。

换句话说,我不想发现这个:

" "

但是比这更重要的事情。例如:

"  ", "   ", etc...

2 个答案:

答案 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)) {