【问题标题】:Regular Expressions: Remove x-leading spaces from lines [duplicate]正则表达式:从行中删除 x 前导空格 [重复]
【发布时间】:2018-02-13 17:30:45
【问题描述】:

删除,例如(完全正确)每行有 2 个前导空格,我已尝试替换

"^  "

""

我使用我们自己的文本编辑器和 Notepad++ 进行了尝试。两者的行为相同,并在最后一次找到/替换发生的相同位置开始搜索,因此它实际上会从每行中删除 2n 个空格(n >= 0)。这是预期的行为吗?我使用的正则表达式对于该任务是错误的,还是我们自己的文本编辑器和 Notepad++ 的行为不正确?

【问题讨论】:

  • 您似乎在问"^ " 正则表达式从每行的开头删除n 倍的双倍空格是否正确。这是 Notepad++ 中的预期行为。如果只需要去掉前两个,使用"^ (.*)",替换为$1

标签: regex


【解决方案1】:

这里的问题是,只要 Notepad++ 不断寻找匹配,它就会不断替换模式。这意味着替换 ^ 将继续从字符串的开头去除空格,只要有两个或更多的前导空格可用。

试试这个解决方法:

查找:

^  (.*)$

替换:

$1

【讨论】:

    猜你喜欢
    • 2017-03-03
    • 2021-04-10
    • 2018-06-11
    • 2018-07-11
    • 1970-01-01
    • 2020-10-27
    • 2016-06-17
    • 2011-11-01
    • 2012-11-15
    相关资源
    最近更新 更多