我需要清理一个字符串,并确保它只包含字母数字字符.我想出了以下代码,由于某种原因失败了
$string = 'aaa`bbb!!';
$string = preg_replace("#[^a-zA-z0-9]*#", "", $string);
echo $string;die;
Run Code Online (Sandbox Code Playgroud)
我收到的输出是aaa`bbb而我期待aaabbb.你能帮帮我吗?
Mar*_*ers 10
应该是资本Z:
preg_replace("#[^a-zA-Z0-9]*#", "", $string);
Run Code Online (Sandbox Code Playgroud)
写入A-z时表示A(ASCII值65)和z(ASCII值122)之间的所有字符.这包括反引号(ASCII值96)加上你不想要的其他几个(下划线,方括号,反斜杠和波浪号).
您也可以使用a +而不是a *来重复保存,用空字符串替换空字符串.