从抓取的xml提要中删除幻影换行符


Remove phantom newline character from scraped xml feed

我试图从php字符串中删除所有额外的空白字符。字符串来源来自客户评论的xml提要。

一些评论有太多的空白,他们显示在我的html!不管那是……空格键被打了太多次,回车,或者换行符,我只希望字符之间最多有一个空格' '

$review = str_replace(array(''n',''r'n',PHP_EOL,''0',''t'), '', $reviewText[1]);
$review = trim(ereg_replace(' +', ' ', $review));

我也尝试过使用preg_replace('/'s's+/', ' ', $review);而不是trim(ereg_replace(

尽管我尽了最大的努力,我还是不能让这个不可见的空格/换行符消失。

任何想法?

我在下面的评论中粘贴了xxx来代替任何类型的识别信息。这是var_dump($review);

的输出

下面是评论:

http://www.mangomm.co.uk/test/string.php

rtrim()ltrim ()trim ()

这些应该可以满足你的要求。

trim('----')应该输出"

rtrim('----a----');应该输出'----a'

ltrim('----a----');应该输出'a----'

每个连字符代表一个空格。

编辑:

和之后的 I read your post:)

新行是换行(<br>, <br />等)吗?print_r不将文本转换为htmlentities

ereg_*函数已弃用。不要使用它们。

下面的正则表达式应该可以工作

preg_replace('/[[:space:]]+/', ' ', $review);

[:space:]匹配空白字符。在"C""POSIX"区域设置中,它们是空格、换行('f)、换行('n)、回车('r)、水平制表符('t)和垂直制表符('v)