我将以下内容用于preg_replace
:
$replace = '/[!\/."",#\s\-:?"]+/';
例如,当我尝试在'
上面添加时,它会给我一个文件错误:
解析错误:语法错误,第 38 行 .../s.php 中的意外 T_NS_SEPARATOR
此外,是否有更简单的方法列出所有要替换的符号?
我将以下内容用于preg_replace
:
$replace = '/[!\/."",#\s\-:?"]+/';
例如,当我尝试在'
上面添加时,它会给我一个文件错误:
解析错误:语法错误,第 38 行 .../s.php 中的意外 T_NS_SEPARATOR
此外,是否有更简单的方法列出所有要替换的符号?
如果您想摆脱任何符号,请尝试:
$replace = "/[^a-zA-Z0-9 ]/";
^
表示“除以下之外的任何内容” 。将您想要允许的任何字符添加到列表中。这比列出每个符号并不得不处理转义要容易。
您需要转义'
字符,因为它也是单引号字符串的分隔符:
$replace = '/[!\/.,#\s\-:?"\']+/';
^^
转义是通过\
在它前面添加来完成的。这通常是合乎逻辑的,否则您将完成字符串定义,然后导致语法错误(PHP 无法解析您的代码)。请参阅单引号字符串文档。
有没有更简单的方法来列出所有要替换的符号?
仅仅列出它们还不够容易(就像你已经做过的那样)?所以我必须承认我不清楚你真正关心的是什么,所以我不能提供更简单的东西。