正则表达式,只能以零个或多个空格开头

And*_*eas 0 .net c# regex

我想用 C# 中的正则表达式匹配一个字符串。字符串前面只能有零个或多个空格,不允许有其他字符。

有效的字符串是:

"> 5", " > 5"
Run Code Online (Sandbox Code Playgroud)

无效的字符串是:

"1 > 5", "1> 3", ">> 3"
Run Code Online (Sandbox Code Playgroud)

我现在有这个正则表达式:

"\s*> "
Run Code Online (Sandbox Code Playgroud)

我也试过"[\s*]> ""[\s]*> "但没有运气。

这似乎是一个简单的问题,但我对正则表达式很陌生,我没能在其他地方找到答案。

提前致谢!

Bol*_*ock 5

我不认为你的意思只是“以 0 个或更多空格字符开头”,因为这样每个字符串都是有效的,包括空字符串,因为它至少满足“以 0 个空格开头”。

查看您的示例输入,也许您的意思是“以 0 个或多个空白字符开头,后面紧跟一个>”。在这种情况下,这个正则表达式应该这样做:

^\s*>[^>]*$
Run Code Online (Sandbox Code Playgroud)

如果您需要匹配符号后的内容,请将第二个替换为*a 。+>