正则表达式整个输入匹配模式

jSh*_*erz 2 php regex

如何使用PHP preg_replace函数制作正则表达式模式,删除所有不适合某种模式的字符.例如:

[a-zA-Z0-9]
Run Code Online (Sandbox Code Playgroud)

Mat*_*att 9

您可以使用^以下方法否定字符集:

[^a-zA-Z0-9]

^只有否定现有的字符集,[...]它是,当它是一组中的第一个字符它只适用.您可以在此处阅读有关否定字符集的更多信息

所以,最后:

preg_replace('/[^a-zA-Z0-9]/', '', $input);
Run Code Online (Sandbox Code Playgroud)

编辑:如下面的评论中所述,您还可以添加+量词,以便在迭代的1个匹配中替换连续的无效字符preg_replace:

preg_replace('/[^a-zA-Z0-9]+/', '', $input);
Run Code Online (Sandbox Code Playgroud)