带有preg_replace的PHP过滤器只允许使用字母

Mas*_*345 20 php regex

我对preg_replace有点问题.我需要一个函数将所有字符转换为除了[A-z][0-9]和之外的所有字符. ! ?

我可以做一个preg_match,但这只是验证,我想要被替换.这不把垃圾字符像 <p>;[[;[p;[ 在描述元标记.

所以脚本必须像:

;")<br>kk23?! => brkk23?!

任何帮助将不胜感激:D

dan*_*ang 45

$string = ';")<br>kk23?!'; 
$new_string = preg_replace("/[^A-Za-z0-9?!]/",'',$string);
echo $new_string;
Run Code Online (Sandbox Code Playgroud)

留言 - 字母,数字,空格,?!

/* 3 choices. Pick one you like! */
$str = preg_replace("/[^A-Za-z0-9?! ]/","",$str);
$str = preg_replace("/[^A-Za-z0-9?!\s]/","",$str);
$str = preg_replace("/[^A-Za-z0-9?![:space:]]/","",$str);
Run Code Online (Sandbox Code Playgroud)

  • `ereg_replace()`已弃用..`preg_replace()`会更好. (5认同)

Ria*_*iaD 6

 $var=preg_replace('~[^A-Za-z0-9?.!]~','',$var);
Run Code Online (Sandbox Code Playgroud)

不要忘记A-Za-zA-z不一样