2

我有一个字符串表示日期/时间和时区。我想将时区部分更改为 UTC,即+00:00

请帮助我编写正则表达式以匹配+05:30-03:30并将其替换为+00:00

我试过 "2012-04-17T15:40+05:30".gsub!(/\+\d\d:\d\d/, '+00:00')which 给了我预期的结果,但我不知道如何匹配-5:30

如果有人帮助我编写适用于两者的正则表达式,我将不胜2012-04-17T15:40+05:30感激2012-04-17T15:40-05:30

谢谢,阿米特帕特尔

4

3 回答 3

7
"2012-04-17T15:40+05:30".gsub!(/[+-]\d\d:\d\d/, '+00:00')

将替换正偏移和负偏移。但为什么?

于 2012-04-17T19:56:06.187 回答
1

怎么样简单:

str = "2012-04-17T15:40+05:30"
str.sub!(/.{6}\z/, '+00:00') # => "2012-04-17T15:40+00:00"
于 2012-04-17T19:56:15.593 回答
1

将您的正则表达式更改为

/(\+|\-)\d\d:\d\d/
于 2012-04-17T19:57:42.627 回答