如何使用带有特殊符号的preg_replace

时间:2015-04-21 07:20:18

标签: php

我对preg_replace有疑问。如何保留这些符号:. , ? ! ' " : ;并删除其他符号?此功能与立陶宛字母和数字一起使用。我试过这段代码:

preg_replace('/[^\p{L}\p{N}\s !?,;:.-]/u', '', $value);

1 个答案:

答案 0 :(得分:2)

在这种情况下,您必须转义那些在正则表达式中具有特殊含义的字符。

preg_replace ('/[^\.,?!\'":;\-]/', '' ,$value);
也可以使用

preg_quote:

$toKeep = preg_quote ('.,?!\'":;', '/');
preg_replace ('/[^' . $toKeep . ']/', '', $value);