我几乎没有用户输入,我试图通过MatchCollection与我有的不同模式进行比较,即
string user = "\b(?:I|would|like|to|see|id|of|bought|good)\b";
但是当我匹配字符串
时string pattern = "^(?=.*\bgoods?|items?|things?\b)(?=.*\bbought\b)(?=.*\bid\b)(?=.*\btest\b).*$";
MatchCollection mat = Regex.Matches(pattern , user );
foreach (var item in mat)
{
Console.WriteLine(item.ToString());
}
当匹配上述两个时,匹配集合仅产生/收集(id,buy)匹配但忽略第一个模式块中的“goods”。它似乎忽略了?前瞻提到的货物?|物品?|东西?
任何建议。
谢谢