在Javascript中将包含(/和:)的字符串分割成数组
Splitting string which includes( / and : ) into an array in Javascript
我有一个包含日期和时间的字符串。在某些情况下,我需要把它们都分开。我的字符串像这样:28/08/2015 11:37:47
有一些解决方案,但他们没有解决我的问题
var date = "12/15/2009";
var parts = date.split("/");
alert(parts[0]); // 12
alert(parts[1]); // 15
alert(parts[2]); // 2009
这是类似的事情,但正如我上面所说的,我需要拆分它们。
谢谢你的帮助
如果您总是使用日期时间格式,我建议使用简单的regex
"28/08/2015 11:37:47".split(/'/|'s|:/)
用空格和冒号
分隔并返回
["28", "08", "2015", "11", "37", "47"]
根据评论中提出的问题进行编辑
function parse() {
/** INPUT FORMAT NEEDS TO BE DAY/MONTH/YEAR in numbers for this to work **/
var datetime= document.getElementById("datetime").value;
var time = document.getElementById("time").value;
var output = document.getElementById("output")
var datetimearr = datetime.split(/'/|'s|:/);
var timearr = time.split(/:/);
var date = new Date(datetimearr[2],datetimearr[1]-1,datetimearr[0],datetimearr[3],datetimearr[4],datetimearr[5]);
date.setHours(date.getHours()+(parseInt(timearr[0])));//parseInt needed otherwise it will default to string concatenation
date.setMinutes(date.getMinutes()+(parseInt(timearr[1])));
date.setSeconds(date.getSeconds()+(parseInt(timearr[2])));
output.value = date.toString();
}
Date time: <input type="text" value="28/08/2015 11:37:47" id="datetime"><BR/>
Time to add: <input type="text" value="11:37:47" id="time"><input type="button" value="calculate!" onclick="parse()"><BR/>
<textarea id="output" placeholder="Output comes here" style="width:400px;height:100px;"></textarea>
可以使用正则表达式
var str = '28/08/2015 11:37:47';
console.log(str.split(/['/:'s]/));
您可以简单地将字符串转换为日期:
var datestr = "12/15/2009 11:33:44";
var date = new Date(datestr);
现在通过这些函数访问这些值:
date.getDate(); // -> 15
date.getMonth(); // -> 12
date.getFullYear(); // -> 2009
date.getHours(); // -> 11
date.getMinutes(); // -> 33
date.getSeconds(); // -> 44
working js fiddle示例
编辑:不得不修复的例子,因为document.write
没有正确地工作在小提琴。
相关文章:
- 在javascript中用逗号分隔的字符串分割值
- 当字符串中只有一个元素时,如何在jQuery中将字符串分割成数组
- Javascript:用不同的分隔符将字符串分割成数组
- 使用正则表达式混淆的JS字符串分割
- 将字符串分割为数组,同时忽略撇号之间的内容
- 我如何使用Javascript执行字符串分割和访问数组的值
- 字符串分割——在第二个逗号处分割字符串
- 从字符串分割数字的正则表达式
- 在JavaScript中将字符串分割成任意维度的多维数组的最快方法
- 为什么JavaScript字符串.分割(/[-_]+/)就像引号('和")都包含在[组]中
- 基于重复的字符串分割
- JS:将长字符串分割成具有char限制的字符串,同时避免分割单词
- 字符串分割方法(每一行)
- 将字符串分割成参数,就像JavaScript中的URL一样
- 如何使用jquery将URL字符串分割成多个部分并插入到变量中
- Jquery查询参数解析- "="在查询字符串中,将查询字符串分割
- 在Javascript中将包含(/和:)的字符串分割成数组
- Javascript -字符串分割工作不好
- 字符串分割"UTC - 11:00"从timeZones使用正则表达式java
- 通过逗号将字符串分割成数字,然后打印,最终会跳过1个y值