php - 保留换行符的正则表达式

标签 php regex line-breaks

我有一个正则表达式,它只允许消息中出现某些字符。 我想要实现的是允许换行符,并将使用nl2br函数保留换行符。

这就是我到目前为止所拥有的:

preg_replace('/[^a-zA-Z0-9ńśćółęążź\ .,-]/','',$message)

据我检查,以下表达式应该保留换行符,但将其添加到上面的表达式时遇到问题:

/(\r|\n|\r\n){2,}/

最佳答案

您只需将 \r\n 添加到不替换的字符列表中。所以:

preg_replace("/[^a-zA-Z0-9ńśćółęążź\ \.,\-\r\n]/",'',$message)

在上面的表达式中,我还必须将 ' 更改为“(以便识别 \r\n)但还必须转义 .- 字符

关于php - 保留换行符的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14998780/

相关文章:

php - 我应该检查由 Composer pull 入的供应商文件夹中的库吗?

c# - 替换字符串中的一个字符而不是两个字符

php - file_put_contents、file_append 和换行符

php - 如何从 URL 获取视频 ID? (每日运动)

python - 在 Python 中读取带有行连续字符的文件

ios - 如何防止链接的电话号码在 iOS 上断线?

php - 如何将 php/html 表单中的数据提取到数据库中?

php - 从字符串中的 ids 中检索表中的随机行

php - 在 WordPress 的非 Divi 页面中加载 Divi 库组件

PHP 分解字符串,但将引号中的单词视为单个单词