【问题标题】:How to merge lines together that are separeted by =====如何将由=====分隔的行合并在一起
【发布时间】:2018-03-19 06:26:30
【问题描述】:

我想过滤文本,但找不到方法。 我的文字是这样的:

name: name1
house: house1
nationality: nationality1
=============================
name: name2
house: house2
nationality: nationality2
=============================
name: name3
house: house3
nationality: nationality3

我也想这样:

name: name1 house: house1 nationality: nationality1
=============================
name: name2 house: house2 nationality: nationality2
=============================
name: name3 house: house3 nationality: nationality3

可以用记事本++完成吗? 还是有其他方法可以做到这一点?提前致谢。

【问题讨论】:

    标签: regex wordpress text filter formatting


    【解决方案1】:

    如果没有以“=”结尾或开头的“正常”行,则替换([^=])\n([^=]) \1 \2(或$1 $2,取决于引擎)应该可以工作。

    [^=] 表示“任何不是等号的字符”,括号确保我们可以在替换中使用该字符,\n 是换行符。

    由于它与分隔符周围的换行符不匹配,因此它将不理会这些。

    【讨论】:

      【解决方案2】:

      在 Notepad++ 中,试试这个正则表达式:

      (?<!=)[\r\n]+(?!=)

      Click for Demo

      解释:

      • (?<!=) - 反向查找以查找未紧接在 = 前面的位置
      • [\r\n]+ - 在上一步中找到的位置之后立即匹配出现 1 次以上的换行符或回车符
      • (?!=) - 负前瞻验证当前匹配没有紧跟=

      输出:

      更换前:

      用空格替换后:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-14
        • 1970-01-01
        • 2019-08-22
        • 2017-02-05
        • 2021-07-04
        • 2012-12-10
        • 2015-06-16
        • 2021-08-14
        相关资源
        最近更新 更多