替换日期开始的额外数字



由于图像质量,我有OCR提取的日期字符串,日期的第二个斜杠为1,

即日期为 23/0212014,其中年份之前的 1 应该是/实际上。我试图用正则表达式替换 1,但它不起作用。

DateTime.TryParseExact不起作用,我尝试过的代码是:

string mm = "23/0212014";
var rex = new Regex(@"(?:((d{2}/d{2})1(d{4})))");
mm = rex.Replace(mm, "");

如何将其转换为正确的日期(dd/MM/yyyy)

>DateTime.TryParseExact对我来说很好用:

using System;
using System.Globalization;
class Test
{
    static void Main()
    {
        string text = "23/0212014";
        DateTime result;
        if (DateTime.TryParseExact(text, "dd/MM'1'yyyy",
                                   CultureInfo.InvariantCulture,
                                   DateTimeStyles.None, out result))
        {
            Console.WriteLine(result);
        }
        else
        {
            Console.WriteLine("Failed to parse");
        }
    }
}

输出:

23/02/2014 00:00:00

(当然,一旦您将其解析为DateTime您就可以根据需要重新格式化它。

我肯定会尝试使用它而不是正则表达式。

相关内容

  • 没有找到相关文章

最新更新