我有一个字符串示例:“over-80---of-international----visitors-want-to-return”
如何删除多个“--”到“-”以写入网址对不起我的英语很糟糕
我有一个字符串示例:“over-80---of-international----visitors-want-to-return”
如何删除多个“--”到“-”以写入网址对不起我的英语很糟糕
$string = 'over-80---of-international----visitors-want-to-return';
$string = preg_replace('#-{2,}#', '-', $string);
preg_replace 应该工作:
$s = preg_replace('/-{2,}/', '-', "over-80---of-international----visitors-want-to-return");
但是,如果确实 OP 正在 .htaccess 中寻找 mod_rewrite 规则,那么这将起作用:
RewriteRule ^(.*?)(-)-+(.*)$ /$1$2$3 [L]
尝试这个:
$new = 'over-80---of-international----visitors-want-to-return';
do {
$old = $new;
$new = str_replace('--', '-', $old);
} while($old != $new);
这个循环改变 - 到 - 直到没有什么可做的。
您需要使用str-replace。
$string = "over-80---of-international----visitors-want-to-return";
$replaced = str_replace("--", "-", $string);