如何从字符串中删除重复序列 - php

时间:2012-11-14 15:13:38

标签: php

我有一个由其他人写的函数,它返回一个客户的地址。这个功能并不像你想象的那么简单。由于一个很好的理由,它已被编写,以便返回变量通过:

eval("\$address_out = \"$fmt\";");

第一。尽管快速查看手册,但它对我来说是一个谜。所以问题是地址像这两个例子一样被返回(注意有3个重复<br/> s和另外4个)

ginger rogers<br /> hollywood<br /> California<br /> <br /> <br /> United states

ginger rogers<br /> hollywood<br /> <br /> <br /> <br /> United states

我认为将重复的<br/>剥离出来会更快但我很困惑,因为它们可以有不同的数量,并且它们被空格分开。

任何想法?

编辑:我应该说,我想在地址的每一位之间保留其中一个,这是多路的地方我想摆脱除了一个之外的所有

1 个答案:

答案 0 :(得分:1)

$addr = str_replace( array( '<br/>', '<br>', '<br />', "\r", "\n" ), '', $addr );将删除<br/>个中断,以及新行和回车字符。

保持一个<br/>

while ( strpos( $addr, '<br /> <br />' ) !== false ) { 
    // while two adjoining <br />'s still exist in the variable
    // replace two with one <br /> break
    $addr = str_replace( '<br /> <br />', '<br />', $addr );
}