我写了这个代码来准备链接的标题, 但我觉得它有点粗略, 想知道如果有人能更清楚地了解 regex, 可以减少以下功能( 通过合并相关的预置替换 ) 。 我需要它去掉所有的当前连字符, 脱去多个空格, 确保它除了空间替换连字符之外, 仅是字母数字, 用单一连字符替换所有空格, 并确保字符串不会以连字符开头 :
function prepareURLTitle($title)
{
return preg_replace("/A-/", "", str_replace(" ", "-", preg_replace("/[^a-zA-Z0-9s]/", "", preg_replace( /ss+/ , , preg_replace( /s?-/ , , $title)))));
}
输入和输出的例子 :
输入 :
BRANND New - 手套, 2包/// 多个空间都在这里, 但区段方位不允许我展示它们
产出:
BRAND-NEW-Gloves-2号包