regex 正则表达式是否只匹配空行前面没有文本的行的换行符?

ki0zmccv  于 2023-06-30  发布在  其他
关注(0)|答案(1)|浏览(116)

我试图用markdown换行符替换诗歌的markdown文件中的换行符,这意味着在a)有文本和b)没有空行的行的末尾添加两个空格。
因此,以下文本:

this line should have a break
and this one
but not this one

and this one should
and this one
but not this one

and so on

将在出现X的地方添加两个空格:

this line should have a breakX
and this oneX
but not this one

and this one shouldX
and this oneX
but not this one

and so on

我似乎找不到正确的咒语与我的muddling。我想到的最接近的是(.*?)\n(?!\n),但它也匹配空行。

tjvv9vkg

tjvv9vkg1#

您可以在capture group中的\n之前检查 * 非白色 * \S

(.*\S)\n(?!\n)

在替换中插入捕获和空间:$1 \n(regex101 demo)
或者如果支持lookbehind,只需将(?<!\s)\n(?!\n)替换为\n

相关问题