我有一个字符串需要使用正则表达式(或匹配项)进行解析:

SomeTextHereThatIWantToIgnore: <First Month.104.yyyy-mm-dd> <Last Day.2.yyyy-mm-dd>"  OR SomeTextHereThatIWantToIgnore: "<BadVerb.104>"


我可能要解析一,两个或三个字符串(全部在一行上)。在每种情况下,我都想获取“ ”之间的所有内容。

因此,在第一个示例中,我要获取“ First Month.104.yyyy-mm-dd”和“ Last Day.2.yyyy-mm-dd”。在第二个示例中,我想获取“ BadVerb.104”。

那里的正则表达式专家都可以向我展示如何实现此目标吗?

最佳答案

将文本放入尖括号而不捕获括号的基本正则表达式是

(?<=<)[^>]+(?=>)


使用Regex.Matches进行匹配。

var matches = Regex.Matches(str, @"(?<=<)[^>]+(?=>)");

08-16 18:40