我很难理解以下表达式\\[B.+\\]
和代码为什么会返回1个匹配项:
string r = "\\[B.+\\]";
return Regex.Matches(Markup, sRegEx);
我希望找到在变长的HTML字符串Markup中,以B为前缀并用方括号括起来(称之为“标记”)的所有实例。该字符串不包含换行符。
如果该字符串包含[BName]
,我将获得一个匹配 - 好的。
如果该字符串包含[BName] [BAddress]
,我只会得到一个匹配 - 为什么?
如果该字符串包含[BName][BAddress]
,我也只会得到一个匹配。
在一些基于Web的正则表达式测试工具中,我注意到如果文本包含CR字符,则每行都会获得一个匹配 - 但我需要一种指定返回独立于换行符的匹配的方法。
我还在MatchCollection的Groups和Captures集合中探索,但无济于事 - 始终只有一个结果。