preg_ replace删除多个“; 〃;s


preg_replace removes multiple " "s

如何从下面的示例中删除多次出现的'n并替换为仅出现一次的'n

基本上,我只想删除多个换行符,并用一个换行符替换它们。

'n'n'n'n'n'n'n'n 'n'n 'n'n'n'n'n'n'n    'n'n     'n'n     'n'n    'n'n    'n'n     'n'n     'n'n     'n     'n     'n     'n     'n     'n     'n'n     'n'n     'n'n     'nEDITION:  U.S.'n'n 'nINTERNATIONAL'n'n     'nMÉXICO'n'n     'n'n     'nSet edition preference'n'n     'n'n     'n'n     'n'n     'nSign up'n'n     'nLog in'n'n     'n'n 'n'n     'n'n     'n'n     'n'n'n'n'n'n'n'n'n'n'n'n     'n'n     'n'n'n 'n'n 'n'n     'n'n     'n'n    'n'n    'n'n     'n'n     'nHome'n'n     'nVideo'n'n     'nNewsPulse'n'n 'nU.S.'n'n     'nWorld'n'n     'nPolitics'n'n     'nJustice'n'n     'nEntertainment'n'n     'nTech'n'n     'nHealth'n'n     'nLiving'n'n     'nTravel'n'n 'nOpinion'n'n     'niReport'n'n     'nMoney'n'n     'nSports'n'n     'n'n    'n'n'n'n'n'n 'n'n'n'n'n'n'n'n 'n'n'n'n 'n'n'n'n'n'n'n 'n'nupdated 10:02 a.m.EDT, Fri June 3, 2011'n'n'n'n'n'n 'n'n'n'n'n'nDr. Jack Kevorkian dead at 83'n'n'n'n'n'n'nThe Michigan pathologist who put assisted suicide on the world''s medical ethics stage, apparently died of a blood clot, according to his attorney. FULL STORY

双向

while(strpos($string, "'n'n") !== false)
  str_replace("'n'n", "'n", $string);

preg_replace("/'n+/", "'n", $string);

这应该有效:

<?php
$string = "'n'n'n'n Text 'n'n Text 'n'n'n'n'n Text 'n'n'n";
echo preg_replace("#['n]+#", "'n", $string);

如果这是一个真正的回车,您可以这样做来删除连续的回车:

preg_replace('/'n+/', ''n', $yourString);

对于字符串"''n",您可以执行其他操作:

preg_replace('/(''n)+/', ''n', $yourString);

最后,如果您想删除您的所有空格,您也可以执行""

preg_replace('/'s*'n+/', ''n', $yourString);

尝试使用++强制+匹配为贪婪。

preg_replace('/'n++/', "'n", $yourString);

奇怪,这些代码都不起作用?示例:

$barcodes = "5312353123123

5312353123123

5312353123123";
echo(     var_dump(   $barcodes     )     . '</br>' . "'n"  );
$barcodes = preg_replace('/'n+/', "'n", $barcodes);
exit(  var_dump(   $barcodes     )     . '</br>' . "'n"  );

输出:

string(55) "5312353123123 5312353123123 5312353123123"
string(55) "5312353123123 5312353123123 5312353123123"

这意味着函数确实。。。没有什么

str_replace()手册页上gotcha示例的另一种方法是:

// Order of replacement
$str     = "Line 1'nLine 2'rLine 3'r'nLine 4'n";
$order   = array("'r'n", "'n", "'r");
$replace = '<br />';
// Processes 'r'n's first so they aren't converted twice.
$newstr = str_replace($order, $replace, $str);

尝试:

$newstr = preg_replace("/'r'n'r'n|'r'r|'n'n/", "..", $str);