Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
缺少PHP正则表达式preg_replace定义_Php_Regex - Fatal编程技术网

缺少PHP正则表达式preg_replace定义

缺少PHP正则表达式preg_replace定义,php,regex,Php,Regex,我想让用户输入有效,因此我使用正则表达式。 我希望用户只插入字母数字内容和一些特定字符,如-,!$^&等 到目前为止,我得到的代码是: $validText = preg_replace('@[^A-Za-z0-9\w\ ]@', '',$text); 但它只关心字母数字和空格,但我如何定义正则表达式以将字符表示为“!@#等等?我在哪里定义它? 顺便问一下,你能给我介绍一个好的正则表达式吗 任何建议只需将其添加到您的群中即可 $validText = preg_replace('/[^A-Za

我想让用户输入有效,因此我使用正则表达式。 我希望用户只插入字母数字内容和一些特定字符,如-,!$^&等 到目前为止,我得到的代码是:

$validText = preg_replace('@[^A-Za-z0-9\w\ ]@', '',$text);
但它只关心字母数字和空格,但我如何定义正则表达式以将字符表示为“!@#等等?我在哪里定义它? 顺便问一下,你能给我介绍一个好的正则表达式吗


任何建议只需将其添加到您的群中即可

$validText = preg_replace('/[^A-Za-z0-9\w .\'!@#]/', '',$text);

注意:可能更适合这种情况。当前您允许使用无效字符,然后将其删除。用户体验不佳。

只需将其添加到您的群中即可

$validText = preg_replace('/[^A-Za-z0-9\w .\'!@#]/', '',$text);

注意:可能更适合这种情况。当前您允许使用无效字符,然后将其删除。造成糟糕的用户体验。

谢谢,你的意思是$validText=preg\u replace('/[^a-Za-z0-9\w.'!@]/','$text);?不。它们可以在同一组中。但是,我应该跳过
。请参阅更新。谢谢,你的意思是$validText=preg\u replace('/[^a-Za-z0-9\w.'!@]/','.$text)否。它们可以都在同一组中。但是,我应该跳过
。请参阅更新。