我有一个正则表达式,只允许消息中的某些字符。 我想要实现的是允许换行,这将使用 nl2br 功能保留。
到目前为止,这就是我所拥有的:
preg_replace('/[^a-zA-Z0-9ńśćółęążź\ .,-]/','',$message)
据我所知,下面的表达式应该保留换行符,但是我在将其添加到上面的表达式时遇到了问题:
/(\r|\n|\r\n){2,}/
答案 0 :(得分:2)
您只想添加\r
& \n
到要替换的字符列表。所以:
preg_replace("/[^a-zA-Z0-9ńśćółęążź\ \.,\-\r\n]/",'',$message)
在上面的表达式中,我还必须将'
更改为“(以便\r
& \n
被识别”,但也必须转义{{1 }和.
个字符
答案 1 :(得分:1)
我相信这就是你要找的东西。
print preg_replace('/'。preg_quote('[^ a-z0-9ńśćółęążź\。, - \ r \ n])')。 '/ I', '', “测试\ r \ NTEST \ RTEST \ NTEST”);