首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Joomla preg_replace不工作

问Joomla preg_replace不工作
EN

Stack Overflow用户
提问于 2013-11-28 21:21:50
回答 1查看 159关注 0票数 0

我想删除多个空格。

它工作得很好:

代码语言:javascript
复制
$test = array('bla bla   blaa   ', 'eee asdasd lorem mmmm    asdasd asdd   ss');
foreach($test as $item) {
  echo preg_replace('/\s+/', ' ', $item)."\n";
}

但是,当我制作Joomla 3.2插件,我爆炸文章内容(新行),它不工作,我不知道为什么。

代码语言:javascript
复制
$string = explode("\n", $text); // art content

foreach($string as $item) {
    echo preg_replace('/\s+/', ' ', $item)."\n"
}

编辑调试:

不管用..。

代码语言:javascript
复制
$string = explode("\n", $text);

foreach($string as $item) {
    var_dump($item);
    echo preg_replace('/\s+/', ' ', $item)."\n";
}

返回

代码语言:javascript
复制
                    string(53) "<p>ballll asf           aikasifn     asf </p>
"
<p>ballll asf           aikasifn     asf </p> 
string(58) "<p>lorem          i   psdfaufma   asfasf</p> "
<p>lorem          i   psdfaufma   asfasf</p> 
EN

回答 1

Stack Overflow用户

发布于 2013-11-28 21:38:43

RegExr实例

您可能需要使用2或更多的值来正确匹配替换。

代码语言:javascript
复制
echo preg_replace('/\s{2,}/', '', $item)."\n"

更新

代码语言:javascript
复制
$text = <<<EOF
<p>ballll asf           aikasifn     asf </p>
<p>ballll asf           aikasifn     asf </p>
EOF;

$string = explode("\n", $text);

foreach($string as $item) {
    //var_dump($item);
    echo preg_replace('/\s+/', ' ', $item)."\n";
}

生产:

代码语言:javascript
复制
macbook-pro:Desktop allendar$ php -f test.php 
<p>ballll asf aikasifn asf </p>
<p>ballll asf aikasifn asf </p>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20274909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档