【发布时间】:2015-02-17 13:22:45
【问题描述】:
我正在尝试从我的数据库中获取产品名称并重写它们,名称如下所示:
Romper bedrukt met tekst - Lime maat 68
这是我的重写:
$string = preg_replace("/[^ \w]+/", "", $testlink['name']);
$string = str_replace(" ", "-", $string);
当名字是:
Romper bedrukt met tekst - Lime maat 68
它需要这样做:
Romper-bedrukt-met-tekst-Lime-maat-68
但它是这样做的:
Romper-bedrukt-met-tekst--Lime-maat-68
您可以看到双--,因为在第一个preg-replace 中,我删除了除数字和字母之外的所有奇怪字符,但是当名称已经包含-时,将有2 个空格。我的第二次替换用两个--填充它们。
我怎样才能让它工作?
【问题讨论】:
标签: php replace preg-replace