首页 > 解决方案 > 正则表达式删除第一个空行

问题描述

在像这样的字符串中




z


h




我想使用正则表达式删除所有空值[\r\n]+$ 您可以查看示例

根据上面示例中的匹配信息部分,替换后顶部仍有一个空行,大概是第 3 行 关于如何匹配这个空值的任何建议 谢谢

标签: regexempty-list

解决方案


您需要首先从字符串的开头删除所有换行符。

/[\r\n]+$/mg删除所有换行符,但它会在换行符字符条纹的最后一个字符结束之前停止,因此所有初始空行,但最后一个都被删除。

因此,在 PCRE(以及 .NET、Java、Python re、Ruby)模式中,您可以使用

\A[\r\n]+|[\r\n]+$

请参阅正则表达式演示,在 regex101 测试器中将其与多行和全局标志一起使用。

细节

  • \A[\r\n]+- 字符串开头和 1+ CR 或/和 LF 符号,尽可能多
  • | - 或者
  • [\r\n]+$- 1+ CR/LF 符号,尽可能多,后跟换行符或字符串结尾。

推荐阅读