Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我还是不知道';我不懂正则表达式_C#_Regex_Match - Fatal编程技术网

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行。是的,我看到了他将使用的实际文件,这使得分配,因为他为什么这样做