查找日期(所有语言)

时间:2012-10-30 14:57:42

标签: c# date search

当我需要在html源代码中找到第一次出现的日期时,我遇到了这个问题。这可以是“2000年1月24日”以及2000年1月24日(斯洛伐克语)或任何其他语言日期格式。

你可能知道一个能够做到这一点的图书馆。我没有,谷歌没有帮助:(

我无法想象正则表达式如何做到这一点,因为我需要手动为所有语言做一个规则

1 个答案:

答案 0 :(得分:1)

CultureInfo课程是您正在寻找的课程。使用dt.ToString("D", c)传递cultureinfo并获取您的格式(顺便说一句,与dt.ToLongDateString相同)。

查看standard date and time format strings

您可以使用CultureInfo.GetCultures获取所有受支持的文化。

DateTime dt = new DateTime(2000, 1, 24);
CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.AllCultures & ~CultureTypes.NeutralCultures);
string allTranslatedJanuaries = 
    string.Join(Environment.NewLine, cultures.Select(c =>
        String.Format("{0}: {1}", c.EnglishName, dt.ToString("D", c))));

这是一个演示:http://ideone.com/6ypqJE

在我的服务器上安装了352个文化,只有112个。