【发布时间】:2019-08-25 09:25:03
【问题描述】:
c# regex.match 的工作方式似乎是唯一的捕获组值返回包括与模式匹配的整个字符串。相反,我只想要 1 美元。现在我必须执行第二步来清理结果。有没有更简洁的方法可以减少到 1 步?
var lineText = @"Reservations 03Mar19";
var m1Pattern = @"^\s*Reservations.*\b(\d{2}\w{3}\d{2})$";
Match m1 = Regex.Match(lineText, m1Pattern);
if (m1.Success) MyDate = Regex.Replace(m1.Groups[0].Captures[0].Value, m1Pattern, @"$1");
【问题讨论】:
-
if (m1.Success) { MyDate = m1.Groups[1].Value; }
标签: c# regex regex-group