识别和删除换行符

时间:2013-02-17 21:12:49

标签: php regex preg-replace associative-array str-replace

我正在使用cURL和php来解析一些HTML内容。然后我将内容作为字符串放在变量中并创建一个数组。

这是我的问题,我有点像

Array (
[firstname] => John
[lastname] =>


Doe
[occupation] =>
programmer

[location] => not far away
)

我得到了一些不是由html中的<br>标签引起的换行符。我可以看到代码中的(空白)换行符,但没有标记。

我尝试使用str_replace('\s', '', $firstname)之类的代码,然后将其放入我的关联数组中,但它无效。我将补充说preg_replace('\s','', $firstname)返回NULL

2 个答案:

答案 0 :(得分:3)

str_replace不接受正则表达式。也许只是在...之后修剪数组。

$array = array_map( 'trim', $array );

如果这不起作用则它们不是正常空间。使用...

preg_replace( '~^[\s]+|[\s]+$~', '', $firstname );

...在添加到数组之前。你忘记了分隔符了。

答案 1 :(得分:0)

尝试:

foreach($array as &$v){
    $v = preg_replace( '/(\n¦\r)+/s', '', $v);
}