我对preg_replace
有疑问。如何保留这些符号:. , ? ! ' " : ;
并删除其他符号?此功能与立陶宛字母和数字一起使用。我试过这段代码:
preg_replace('/[^\p{L}\p{N}\s !?,;:.-]/u', '', $value);
答案 0 :(得分:2)
在这种情况下,您必须转义那些在正则表达式中具有特殊含义的字符。
preg_replace ('/[^\.,?!\'":;\-]/', '' ,$value);
也可以使用preg_quote:
$toKeep = preg_quote ('.,?!\'":;', '/');
preg_replace ('/[^' . $toKeep . ']/', '', $value);