关于过滤标题中单双引号的问题,求帮助

用户在发表内容时,想过滤掉标题中的单双引号,后端用PHP开发,尝试了正则匹配规则$rule = "/^(?!.*[%\'".'\"?])$/';后发现还是无法过滤掉。目前用$str1 = implode(explode("'",$content));可以过滤掉英文的单双引号,但是还是过滤不掉中文的单双引号。求高手帮忙给个解决办法。不胜感激!!!

备注:后端是PHP,需要同时过滤掉单引号和双引号。谢谢。

阅读 4.5k
3 个回答

正则替换即可

$text = "sf.gg''“” 123123";
$result = preg_replace("/('|“|”)/i", "", $text);
echo $result;
<?php
$str = '"\'“‘';
$str = preg_replace('/“|‘|"|\'/i', '', $str);
echo $str;
  1. addslashes
  2. htmlspecialchars
  3. htmlentities

看一下这三个用法,用特别的符号处理,

你如果是中文的话就用正则替换吧

$str = 'A:"How are you" B:"I am fine", "';

echo $str."\n";

$str = preg_replace('/"([^"]*)"/', '“${1}”', $str);

echo $str."\n";
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏