说我有这样的字符串:“23423423” 我希望找到长度为2的所有数字,正则表达式为“[0-9] {2}”
现在我的发短信给了我7场比赛: 23,34,42,23,34,42,23
然而在c#中我似乎只得到了4 23,42,34,42
我需要第一个场景,但无法找到解决方案。
我试过regex.Match()和regex.Matches()没有运气。
任何人都知道怎么做?
答案 0 :(得分:5)
This question对一个非常类似的问题有一些解决方案,并且,根据它们中最简单的一个,你可以使用类似的东西:
Regex regexObj = new Regex("\d\d");
Match matchObj = regexObj.Match(subjectString);
while (matchObj.Success) {
matchObj = regexObj.Match(subjectString, matchObj.Index + 1);
}
答案 1 :(得分:0)
使用字符串操作解决这个问题会更容易。
答案 2 :(得分:0)
(?=([0-9][0-9])).
将该正则表达式与Matches()方法一起使用,然后通过在每个Match对象上调用Group(1)来检索匹配的数字。
但是你使用的编辑器是什么,你是如何让它来执行重叠匹配的?这不是我使用的任何编辑器的正常行为。