正则表达式javascript添加到表达式

时间:2012-06-12 04:20:34

标签: javascript regex datetime

我必须写几个正则表达式。我做了以下所有事情。我不知道如何通过正则表达式添加内容。

  • 将此9/28/2005更改为09.28.2005(我可以用句点替换斜线,但如何将前导零添加到9)

  • September 21, 2006更改为21. September 2006(我可以将,替换为.,但如何更改订单?)

  • 5:00 PM更改为i7:00 Uhr(12至24小时)?

2 个答案:

答案 0 :(得分:0)

第一个案例(填零为零):

result = subject.replace(/\b(\d)(?=[\/.])/ig, "0$1");

第二种情况(变更单):

result = subject.replace(/\b(january|february|march|april|may|june|july|august|september|october|november|december) +(\d{2}), +(\d{2,4})\b/ig, "$2. $1 $3");

第3例(12-24小时)

由于JavaScript RegEx引擎不支持If-Then-Else Conditionals。因此,为此目的创建pure RegEx pattern是一项艰巨而又耗时的工作。


希望这有帮助。

答案 1 :(得分:0)

手动进行数学计算......例如制作一个GetTimeZoneOffset函数并从那里开始...

返回UTC与本地时间之间的时区差异:

var d = new Date()

var n = d.getTimezoneOffset();

n的结果值为:240

添加差异和中提琴你有一个真实的日期,你可以格式化你想要的方式..