我想格式化用戶輸入的日期。Regex.Replace - 更正日期格式的模式
- d/M/YYYY:以下面的格式被提供 日期(即:1/1/2012,但也可以是還2012年12月1日或2012/1/12)
我需要他們轉換爲:
- DD/MM/YYYY(即:01/01/2012)
我設法做到這一點在非正則表達式的方式,像這樣:
string date = "1/1/2012";
if (date.IndexOf("/") == 1)
{
date = "0" + date;
}
if (date.Substring(4, 1) == "/")
{
date = date.Insert(3, "0");
}
我真的很想知道如何用Regex.Replace做到這一點,因爲它可能會更整潔。
我累的下面不同的變化:
string date = "1/1/2012"
date = Regex.Replace(date, @"\d{1}/", "0$&");
以上的工作,但如果日期是2012年12月1日,它也將使102出12.如果我添加^在模式的開始我沒有得到第二個數字的改變。我也在開始時嘗試與[^ | /]組合,但也沒有運氣。所以目前它是或者。
我會用不同的格式嘗試解析 - 你有沒有考慮過這個? – weismat 2015-02-06 14:14:18
我沒有 - 會調查它。然而,這個問題純粹是爲了找出如何使用Regex.Replace(),謝謝。 – CallMeBob 2015-02-06 15:56:37