php用一个空格替换多个空格

时间:2013-07-05 11:34:48

标签: php

我想为字符串中的单个空格替换多个空格。请告知如何做到这一点。示例代码:

  <?php
    $input="bikash&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ranjan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nayak";
    echo $output =preg_replace('/(( )+|(\\n)+)/', '$2$3',$input);

    ?>

输出即将来临:
“bikash ranjan nayak”

7 个答案:

答案 0 :(得分:4)

您可以使用正则表达式

$output = preg_replace('!\s+!', ' ', $input);

答案 1 :(得分:1)

试试这个

$output = implode("&nbsp;",array_filter(explode("&nbsp;",$input)));

答案 2 :(得分:1)

$output = preg_replace('!\(&nbsp;)+!', '&nbsp;', $input);

答案 3 :(得分:1)

试试这个

$output = preg_replace('/\s+/', ' ',$input);

答案 4 :(得分:1)

添加了额外的行($ input = html_ent .....),用于解码html权利。

$input="bikash&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ranjan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nayak";

$input = html_entity_decode($input);

echo $output =preg_replace('/(( )+|(\\n)+)/', '$2$3',$input);

答案 5 :(得分:1)

试试这个。它将在浏览器上显示为单个空格

$output = str_replace("&nbsp", " ",$input);

答案 6 :(得分:1)

试试此代码

$input="bikash&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ranjan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nayak";
$array = explode('&nbsp;', $input);
$output = implode('&nbsp;', array_filter($array));
echo $output;

一个班轮:

$output = implode('&nbsp;', array_filter(explode('&nbsp;', $input)));