PHP中接受撇号的正则表达式


Regular expressions which accept Apostrophes in PHP

我正在编写一个PHP验证表单,它只接受。

  • 小写字母
  • 大写字母
  • 数字
  • 字间空格
  • 标点符号':,.!().?"

到目前为止,我已经尝试了'#^[a-zA-Z0-9" *":,.!-().?";'']+$#i'使用if (preg_match()){但这只传递字母和数字。句号

我希望它接受这样的产品描述:"家庭娱乐的未来!","Play CD's"

我对正则表达式相当陌生,所以我不确定我是否错过了任何或者跟我在PHP中编码的方式有关

可以。

$regex = '#^[a-zA-Z0-9" *:,.!().?";''-]+$#i' ;
$list = ["The future of home entertainment!","Play CD's"];
foreach ($list as $sentence) {
    var_dump(preg_match($regex, $sentence));
}

如果你想匹配破折号,请在[]结尾加上破折号