【问题标题】:match line break except line begin with spcific word or blank line匹配换行符,但以特定单词或空行开头的行除外
【发布时间】:2015-06-22 03:59:20
【问题描述】:

如果我有换行符的文本:

Chapter 1

Lorem ipsum dolor sit amet, consectetur adipisci
ng elit, sed do eiusmod  tempor incididunt ut la
bore et dolore magna aliqua. Ut enim ad minim ve
niam, quis nostrud exercitation ullamco labo ris
nisi ut aliquip ex ea commodo consequat. 


 Chapter 2

Lorem ipsum dolor sit amet, consectetur adipisci
ng elit, sed do eiusmod  tempor incididunt ut la
bore et dolore magna aliqua. Ut enim ad minim ve
niam, quis nostrud exercitation ullamco labo ris
nisi ut aliquip ex ea commodo consequat. 

Lorem ipsum dolor sit amet, consectetur adipisci
ng elit, sed do eiusmod  tempor incididunt ut la
bore et dolore magna aliqua. Ut enim ad minim ve
niam, quis nostrud exercitation ullamco labo ris
nisi ut aliquip ex ea commodo consequat. 

...

我想通过删除除chapter 之外的不必要的换行符来恢复文本,如下所示:

Chapter 1

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod  tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco labo risnisi ut aliquip ex ea commodo consequat. 

 Chapter 2

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod  tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco labo risnisi ut aliquip ex ea commodo consequat. 

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod  tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco labo risnisi ut aliquip ex ea commodo consequat. 

...

我尝试匹配 (?<!Chapter\s\d)\n 并将其替换为 notepad++ 中的 '',但它与章节行匹配(为什么?)。 (?<!Chapter\s\d)\n\r(?<!Chapter\s\d)\r\n 也不起作用。那么什么正则表达式可以去除多余的换行符呢?

【问题讨论】:

    标签: regex notepad++


    【解决方案1】:

    试试这个正则表达式:

    (?<=[a-zA-Z])(\n)

    我使用括号来捕获换行符。

    https://regex101.com/r/zS9pB4/3

    【讨论】:

    • @TRX 立即检查解决方案。
    • regex101.com/r/zS9pB4/3 是的,现在匹配可以了,但是替换在结果文本中添加了额外的spaces。你知道怎么解决吗?谢谢。
    • 这实际上并不是多余的空间,只是为了向用户显示编辑的位置。 :) 比如这里我在\n原来是regex101.com/r/zS9pB4/4的位置加了一个-现在可以了吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-10
    • 2015-02-15
    • 2020-09-23
    相关资源
    最近更新 更多