【问题标题】:matching multiple lines beginning with whitespaces匹配以空格开头的多行
【发布时间】:2016-05-02 04:43:03
【问题描述】:

我有一个简单的正则表达式语法来匹配正好以 4 个空格开头的行。

/^(\s{4}).*/g

问题在于. 标记匹配除新行以外的所有内容,因此多行以 4 个空格开头,仅匹配第一行。我已经尝试明确匹配\n 令牌,但我无法完全得到我需要的结果。我一直在使用 regexr.com here 对此进行测试,我无法使用 javascript 不支持的任何语法。

【问题讨论】:

  • 您只是忘记了/m 修饰符。见this demo
  • 谢谢!我什至没有意识到这是一种选择。

标签: javascript regex


【解决方案1】:

^ 符号可以表示两件事:字符串的开头或行的开头。要使其表示后者,您需要指定 /m MULTILINE 修饰符:

/^(\s{4}).*/gm

或者 - 只匹配文字正则空格(注意\s也可以匹配换行符):

/^( {4}).*/gm

regex demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 2019-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多