Php 替换字符

Php 替换字符,php,regex,Php,Regex,我有很多特殊字符的字符串。 我想用字符“-” 字符不需要替换,因为“-”是“A-Za-z0-9”非常直接 $text = preg_replace('~[^0-9a-z]~i', '-', $text); 额外信息 有关更多信息,请参阅 Character类[]中的^在开始时基本上是说,“匹配任何字符,但后面的字符除外” 非常直截了当 $text = preg_replace('~[^0-9a-z]~i', '-', $text); 额外信息 有关更多信息,请参阅 Character类[]中

我有很多特殊字符的字符串。 我想用字符
“-”

字符不需要替换,因为
“-”
“A-Za-z0-9”

非常直接

$text = preg_replace('~[^0-9a-z]~i', '-', $text);
额外信息

有关更多信息,请参阅


Character类
[]
中的
^
在开始时基本上是说,“匹配任何字符,但后面的字符除外”

非常直截了当

$text = preg_replace('~[^0-9a-z]~i', '-', $text);
额外信息

有关更多信息,请参阅

Character类
[]
中的
^
在开始时基本上是说,“匹配任何字符,但后面的字符除外”

试试这个:

preg_replace("/[^A-Za-z0-9-]/", "-", $yourString);

资源:

试试这个:

preg_replace("/[^A-Za-z0-9-]/", "-", $yourString);

资源: