我正在尝试替换字符串中不是字母,数字或破折号“-”的任何内容。

如何修改此行以包含破折号?

$link = preg_replace('/[^a-z0-9]/', "", strtolower($_POST['link_name']));

我只是将其插入那里吗?
$link = preg_replace('/[^a-z0-9-]/', "", strtolower($_POST['link_name']));

最佳答案

您必须转义-,因为它是正则表达式的特殊字符:

$link = preg_replace('/[^a-z0-9\-]/', '', strtolower($_POST['link_name']));

关于php - PHP preg_replace正则表达式为破折号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10881922/

10-12 12:42
查看更多