var timeString=$('.csstdhighlight').closest('tr').find('td:first-child').text();
//getting timestrinfg like this
timeString="07:15 PM07:30 PM07:45 PM08:00 PM08:15 PM08:30 PM08:45 PM";
我必须将字符串转换为数组
因此我可以从array arra[0]
获得开始时间和结束时间将获得开始时间,array[array.length-1]
将获得结束时间
答案 0 :(得分:4)
正则表达式可以完成这项工作;只是开始和停止时间:
var re = /^(\d{2}:\d{2} [AP]M).*(\d{2}:\d{2} [AP]M)$/,
match = timeString.match(re);
console.log(match[1]); // "07:15 PM"
console.log(match[2]); // "08:45 PM"
或者,匹配所有时间模式:
var re = /\d{2}:\d{2} [AP]M/g;
console.log(timeString.match(re));
// ["07:15 PM", "07:30 PM", "07:45 PM", "08:00 PM", "08:15 PM", "08:30 PM", "08:45 PM"]
<强>更新强>
看看每次正则表达式的长度是否恒定,你只需要第一个和最后一个,你甚至可以这样做:
timeString.substr(0, 8); // "07:15 PM"
timeString.substr(-8); // "08:45 PM"
答案 1 :(得分:0)
使用split()
方法。
var n = timeString.split(" ");
start = n[0];
end = n[n.length - 1];