正则表达式匹配以某个字符或空格开头的行,然后是该字符

max*_*son 23 regex

我正在尝试编写一个正则表达式,匹配以连字符( - )OR开头的行,以空格或制表符开头,然后有一个连字符.所以它应该匹配以下内容:

- hello!
            - hello!
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止所得到的:^(\-).但这与上面的第二个例子不匹配,因为它要求第一个字符是连字符.

ars*_*jii 45

你可以试试

^\s*-
Run Code Online (Sandbox Code Playgroud)
  • ^:字符串的开头
  • \s*:零个或多个空格字符
  • -:一个文字-(你不需要在一个字符类之外逃避它)


anu*_*ava 7

您可以通过在开头使0或更多空格可选匹配来使用此正则表达式:

^\s*-
Run Code Online (Sandbox Code Playgroud)