Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用正则表达式,Javascript中还有其他方法可以从具有时区的字符串中提取日期吗_Javascript_Regex_String_Datetime - Fatal编程技术网

使用正则表达式,Javascript中还有其他方法可以从具有时区的字符串中提取日期吗

使用正则表达式,Javascript中还有其他方法可以从具有时区的字符串中提取日期吗,javascript,regex,string,datetime,Javascript,Regex,String,Datetime,我使用正则表达式从给定字符串中提取日期和时间信息 2006-08-15T00:00:00+05:30 我是正则表达式的新手,我的做法如下: (\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}) 我知道可能有更好的办法。因此,如果有人对此有任何了解,请分享和解释。 附言:我还想提取时区信息。是的,您可以使用拆分方法 单击按钮以显示拆分后的数组值 试试看 函数myFunction(){ var str=“2006-08-15T00:00:00+05:3

我使用正则表达式从给定字符串中提取日期和时间信息

2006-08-15T00:00:00+05:30

我是正则表达式的新手,我的做法如下:

(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})
我知道可能有更好的办法。因此,如果有人对此有任何了解,请分享和解释。
附言:我还想提取时区信息。

是的,您可以使用拆分方法


单击按钮以显示拆分后的数组值

试试看 函数myFunction(){ var str=“2006-08-15T00:00:00+05:30”; var res=str.split(“T”); 控制台日志(“日期:+res[0]); console.log(“时间:+res[1]); }
是的,您可以使用拆分方法


单击按钮以显示拆分后的数组值

试试看 函数myFunction(){ var str=“2006-08-15T00:00:00+05:30”; var res=str.split(“T”); 控制台日志(“日期:+res[0]); console.log(“时间:+res[1]); }
如果需要非正则表达式解决方案,可以使用以下方法:

> new Date(Date.parse("2005-07-08T11:22:33+0000"))
Fri Jul 08 2005 13:22:33 GMT+0200 (CEST)
> new Date(Date.parse("2005-07-08T11:22:33+0000")).toUTCString()
"Fri, 08 Jul 2005 11:22:33 GMT"
要获取时区,可以使用
getTimezoneOffset()
函数

var my_date = new Date(Date.parse("2005-07-08T11:22:33+0000"));
var timezone_offset = my_date.getTimezoneOffset();
时区偏移是UTC和本地时间之间的差,以分钟为单位。请注意,这意味着如果本地时区在UTC之后,则偏移量为正,如果在UTC之前,则偏移量为负。例如,如果您的时区为UTC+10(澳大利亚东部标准时间),则将返回-600。夏令时防止此值成为常量,即使对于给定的区域设置也是如此


如果需要非正则表达式解决方案,可以使用以下方法:

> new Date(Date.parse("2005-07-08T11:22:33+0000"))
Fri Jul 08 2005 13:22:33 GMT+0200 (CEST)
> new Date(Date.parse("2005-07-08T11:22:33+0000")).toUTCString()
"Fri, 08 Jul 2005 11:22:33 GMT"
要获取时区,可以使用
getTimezoneOffset()
函数

var my_date = new Date(Date.parse("2005-07-08T11:22:33+0000"));
var timezone_offset = my_date.getTimezoneOffset();
时区偏移是UTC和本地时间之间的差,以分钟为单位。请注意,这意味着如果本地时区在UTC之后,则偏移量为正,如果在UTC之前,则偏移量为负。例如,如果您的时区为UTC+10(澳大利亚东部标准时间),则将返回-600。夏令时防止此值成为常量,即使对于给定的区域设置也是如此

如果使用了
Date()
函数,则可以创建
Date对象
,以获取所有不带所需
正则表达式的数据

示例

var Obj   = new Date();
var month = Obj.getMonth();
var date  = Obj.getDate();
var year  = Obj.getFullYear();
var hour  = Obj.getUTCHours();
var minutes = Obj.getUTCMinutes();
这里是all

如果您使用了
Date()
函数,那么您可以创建
Date对象
,以获取所有不带
正则表达式的数据

示例

var Obj   = new Date();
var month = Obj.getMonth();
var date  = Obj.getDate();
var year  = Obj.getFullYear();
var hour  = Obj.getUTCHours();
var minutes = Obj.getUTCMinutes();

这是所有的

您可以拆分字符串,然后得到一个数组,其中包含以下信息:

 date.split(/[-\+:T]/g);
 //  ["2006", "08", "15", "00", "00", "00", "05", "30"]

此外,在使用时区之前,您应该检查字符串是否包含+或-。您可以拆分字符串,然后获得一个数组,其中包含以下信息:

 date.split(/[-\+:T]/g);
 //  ["2006", "08", "15", "00", "00", "00", "05", "30"]

此外,在使用时区之前,您应该检查字符串是否包含+或-。

是否只使用正则表达式来提取它?您可以在javascript中使用它:var datePart=str.split(“T”);document.getElementById(“test”).innerHTML=“日期:”+datePart[0]+“时间:”+datePart[1]。拆分(“+”[0];您希望只使用正则表达式来提取它吗?您可以在javascript中使用它:var datePart=str.split(“T”);document.getElementById(“test”).innerHTML=“日期:”+datePart[0]+“时间:”+datePart[1]。拆分(“+”[0];是否需要调用Date.parse?我认为我们可以直接将字符串作为agroment传递给Date。是的,您可以直接将日期作为字符串传递给
date()
function是否需要调用date.parse?我认为我们可以直接将字符串作为agroment传递给Date。没错,您可以直接将日期作为字符串传递给
date()
函数