110,538
社区成员
发帖
与我相关
我的任务
分享
A手机价格在1200元时我去买一台 ,卖1500元。B手机我想买一台价格要是1800元,2500卖出。
A手机价格在我有1200元时卖1500元,我买不起
string txt = @"A手机价格在1200元时我去买一台 ,卖1500元。B手机我想买一台价格要是1800元,2500卖出。c手机卖100,买90,200买D手机,卖300";
string patten = @"(?=.*?(?<m>\p{L})手机)(?=.*?(?<b1>买|卖).*?(?<b2>买|卖)).*?(?<money1>\d+).*?(?<money2>\d+).*?(?:[,。]|$)";
foreach (Match m in Regex.Matches(txt, patten))
{
Console.WriteLine(string.Format("{0}手机 {1} {2} {3} {4}", m.Groups["m"].Value, m.Groups["b1"].Value, m.Groups["money1"].Value, m.Groups["b2"].Value, m.Groups["money2"].Value));
}
A\B\C\D都能匹配到