使用记事本++从包含段落的文本文件中删除LAST空行

时间:2019-03-07 14:59:03

标签: regex notepad++

如何使用Regx和notepad ++从以下示例中删除最后一个空白行?

qwerty
asdfgh
<blank line>
zxcvbn
poiuyr
<last blank line>

文本示例在文本块之间包含空白行。

我认为“环视” regx可能有效,例如:(?s)(?=。*)\ n,但它似乎找到了所有行尾字符,而不是最后一个。

2 个答案:

答案 0 :(得分:0)

您可以使用通用

\R\z

它将与换行符和文件结尾匹配。

根据文件换行符的样式,您可以使用

\r\n\z
\r\z
\n\z
\r?\n\z

由于\R\u000D\u000A|[\u000A\u000B\u000C\u000D\u0085\u2028\u2029]的简写,因此您也可以使用

(?:\u000D\u000A|[\u000A\u000B\u000C\u000D\u0085\u2028\u2029])\z
(?:\x{000D}\x{000A}|[\x{000A}\x{000B}\x{000C}\x{000D}\x{0085}\x{2028}\x{2029}])\z

或者,如果不支持\z

(?:\u000D\u000A|[\u000A\u000B\u000C\u000D\u0085\u2028\u2029])$(?![\s\S])
(?:\x{000D}\x{000A}|[\x{000A}\x{000B}\x{000C}\x{000D}\x{0085}\x{2028}\x{2029}])$(?![\s\S])

$(?![\s\S])匹配行/字符串的末尾,且不允许有字符。

答案 1 :(得分:0)

尝试使用此\n\Z删除所有空的las行,如果只需要尝试一次,请尝试\n\z