我正在尝试仅获取双尖括号内的文本: 从这样的文本,然而它返回我整个字符串,而我只是想在双<<>>内获取文本括号中。
line2="Name: <<NAME>> (<<COURSE>>)"
var pattern=@"<<.*?>>";
MatchCollection matches= Regex.Matches(line2,pattern);
我正确地做了,请指导?
答案 0 :(得分:0)
使用此分组构造:(?< name > subexpression )
,如:
string line2 = "Name: <<NAME>> (<<COURSE>>)";
var pattern = @"<<(?<value>\w+)\>>";
MatchCollection matches = Regex.Matches(line2, pattern);
string name = matches[0].Groups["value"].Value; // "NAME"
string course = matches[1].Groups["value"].Value; // "COURSE"
它将捕获的子表达式放入命名组(此处为“value”)。要访问匹配项,请使用Groups
数组,就像我上面所做的那样。