php preg 替换包括斜杠 (/)

php preg replace include slash(/)

我使用 preg 替换,因为我的列数据库不支持“奇怪的字母” 但是在正则表达式之后我需要保留“/”,在下面的代码中“/”总是丢失 在下面的代码中,我需要完成所有字母

<?php
$jurnalName = "TL 110/90-12 K93-N02 AHM+";
$name = htmlspecialchars(htmlentities($jurnalName));
$name = preg_replace('/[^A-Za-z0-9|\-  +]/', '', $name);

var_dump($name);

结果总是“TL 11090-12 K93-N02 AHM+”,我期待的是完整的“TL 110/90-12 K93-N02 AHM+”

将 / 添加到您要保留的字符列表

<?php
$jurnalName = "TL 110/90-12 K93-N02 AHM+";
$name = htmlspecialchars(htmlentities($jurnalName));
$name = preg_replace('/[^A-Za-z0-9|\-\s\+\/]/', '', $name);

var_dump($name);

(我还为 \s 更改了 space 并转义了加号 +,它在这里是可选的,但我认为对于在正则表达式中具有特殊意义的字符来说这是一个很好的做法