[英]how to extract date from a string using regex
我正在寻找可以从以下html中提取日期的正则表达式
<p>British Medical Journal, 29.9.12, pp.37-41.</p>
并将其转换为格式29/09/12
匹配此模式:-
(\d+)[.](\d+)[.](\d+)
并替换为:-
$1/$2/$3
\\d
用于匹配digits
。 将其与量词(+)
配合使用,您将匹配一个或多个数字。 现在,在正则表达式中, dot(.)
是一个元字符,可以匹配任何字符。 要从字面上匹配一个period
,您需要对其进行转义,或者在字符类中使用它。
要转换为特定的Date Format
,例如: MatchEvaluator
9
> 09
,可以使用MatchEvaluator
:-
string input = "British Medical Journal, 29.9.12, pp.37-41.";
Regex reg = new Regex(@"(\d+)[.](\d+)[.](\d+)");
string result = reg.Replace(input, delegate(Match m) {
return m => DateTime.Now.ToString("dd/MM/yy")
});
您可以检查它是否有效。
这是正则表达式模式: \\d{1,2}\\.\\d{1,2}\\.\\d{1,2}
。
这是如何将此字符串解析为DateTime的示例:
DateTime.ParseExact("29.9.12", "d.M.yy", CultureInfo.InvariantCulture);
(\\d{4})[-](\\d{2})[-](\\d{2})
使用此正则表达式选择2017年1月23日的格式日期
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.