【发布时间】:2018-04-12 14:59:26
【问题描述】:
具有“紧密”重复键/值对模式的字符串(对于本示例,键为“名称”,值应为单个小写单词)
string text = "name: abc name: def name: ghi name: jkl";
应该转化为输出
abc、def、ghi、jkl、
而模式中的任何干扰(可以说是“不紧密”),如
string text = "name: abc x name: def name: ghi name: jkl";
应该导致匹配失败,类似于
abc, ## 发生异常:x 无法与模式匹配 ##
我试过了
string text = "name: abc name: def name: ghi name: jkl";
string pattern = @"name:\s*([a-z])*\s*";
MatchCollection ms = Regex.Matches(text, pattern);
foreach (Match m in ms)
{
Console.Write(m.Groups[1].Value+", ");
}
但它会返回
c, f, i, l,
是什么导致了这种奇怪的行为,我该如何解决?
【问题讨论】: