我试图编写一个匹配并捕获完整日期以及日期年份的正则表达式。
例子
TEXT: JAN 2013
CAPTURE: JAN 2013, 2013
我尝试使用:
[a-z]{3}\s(\d{4},*){2}
但是这个不行。如果有人可以帮忙。
我试图编写一个匹配并捕获完整日期以及日期年份的正则表达式。
例子
TEXT: JAN 2013
CAPTURE: JAN 2013, 2013
我尝试使用:
[a-z]{3}\s(\d{4},*){2}
但是这个不行。如果有人可以帮忙。
以下正则表达式为您提供了两个捕获组:
([A-Z]{3}\s(\d{4}))
其中第一个将包含“JAN 2013”和第二个“2013”。
Perl 中的示例:
$text = "JAN 2013";
@m = $text =~ /([A-Z]{3}\s(\d{4}))/;
print "First capture: $m[0]\n";
print "Second capture: $m[1]\n";
输出:
First capture: JAN 2013
Second capture: 2013
用 C# 编写你想要的代码(根据评论)。
对于参考,您可以查看MSDN - 正则表达式语言 - 快速参考,此处为http://msdn.microsoft.com/en-us/library/az24scfc.aspx
Regex r = new Regex(@"\A([a-z]{3}\s+(\d{4}))\Z",
RegexOptions.IgnoreCase);
MatchCollection match = r.Matches(text);
if (match.Count == 1)
{
GroupCollection captures = match[0].Groups;
String theCaptureYouWanted = captures[1] + ", " + captures[2];
...