新手正则表达式的问题/ C#:(*)(。*)简单的正则表达式的问题/多重匹配
考虑;以及如何将匹配 “A = B = C”
我exepected拿到两因为有两种方法可以组合和匹配:
(A = B) = (C)
or
(A) = (B = C)
但是我只找回一个匹配对象(第一种情况)。所以我想我不明白为什么比赛集合是一个集合 - 因为我似乎无法获得多个项目。有人可以解释吗?
仅供参考 - 对于上面的测试我只是用IMMED窗口:
?Regex.Matches("A = B = C", "(.*)=(.*)").Count
1
?Regex.Matches("A = B = C", "(.*)=(.*)")[0].Groups[1].Captures[0]
Value: "A = B"
?Regex.Matches("A = B = C", "(.*)=(.*)")[0].Groups[1].Captures[1]
Value: "C"
实际上,该正则表达式不会与(C)部分相匹配。一旦引擎匹配第一部分,剩下的部分就是......'= C',但是你的正则表达式是要求一个字母,然后等于另一个字母。我想不出一个正则表达式可以做你正在寻找的东西,但是你的正则表达式绝对不适合你正在寻找的东西。 – DavidAndroidDev 2011-03-21 16:25:01