C# 我还是不知道';我不懂正则表达式
我有这段代码,但不知道应该匹配什么。我看过很多不同的网站,试图学习关键词,但我就是不懂正则表达式C# 我还是不知道';我不懂正则表达式,c#,regex,match,C#,Regex,Match,我有这段代码,但不知道应该匹配什么。我看过很多不同的网站,试图学习关键词,但我就是不懂正则表达式 string key = @"^(.*)\s*=\s*(.*)\s*$"; Match value = Regex.Match(line, key); 这将查找一行的开头(^),查找任意数量的字符((.*)),后跟一些空格(\s*),等号(=),更多的空格(\s*)和任意数量的字符((.*))以及行尾($) 一些有效的示例行: a=a abc = xyz value=5 etc它只是将密
string key = @"^(.*)\s*=\s*(.*)\s*$";
Match value = Regex.Match(line, key);
这将查找一行的开头(
^
),查找任意数量的字符((.*)
),后跟一些空格(\s*
),等号(=
),更多的空格(\s*
)和任意数量的字符((.*)
)以及行尾($
)
一些有效的示例行:
a=a
abc = xyz
value=5
etc它只是将密钥、值对捕获到两个单独的组中。请参见右侧的说明。如果您不想捕获下面最后一个空格,那么在第二个捕获组中添加一个
?
,如(.*)
可以解释给定正则表达式的正则表达式。如果有疑问,请使用它及其奇妙的“解释”面板。我能够返回到它正在从中获取一行的文件,并查看它现在正在谈论什么。非常感谢您的帮助。现在我真的很困惑他为什么这么做。他这么做是因为这是一种解析一行的简单方法。手工解析并进行尽可能多的错误检查可能需要大约10行而不是2行。是的,我看到了他将使用的实际文件,这使得分配,因为他为什么这样做