jquery tablesorter addParser for complex date
jquery tablesorter addParser for complex date
im 试图为 jquery 表排序器插件编写解析器,我真的需要帮忙......我得到了这个日期格式:日/月/年 hh:mm:ss a.m.|下午,我无法制作一个适当的正则表达式来使用 JavaScript .match 函数......,这是我得到的代码:
$.tablesorter.addParser({
id: 'DateParser',
is: function(s) {
return false;
},
format: function(s) {
var date = s.match(/^('d{1,2})-('d{1,2})-('d{4}) :('d{1,2}):('d{1,2})$/)
var d = date[1];
var m = date[2];
var y = date[3];
var H = date[4];
var M = date[5];
var S = date[6];
var MS = 0;
return new Date(y, m, d, H, M, S, MS).getTime();
},
type: 'numeric'
});
$("#tabletosort").tablesorter({
headers: {
0: {
sorter: 'DateParser'
}
}
});
match() 调用的结果始终为空...提前非常感谢!
您当前的正则表达式以dd-mm-yyyy :mm:ss
的形式匹配日期 - 您错过了小时,上午/下午,并使用了-
而不是/
,所以这就是为什么它永远不会匹配用dd/mm/yyyy hh:mm:ss a.m.|p.m.
格式的日期。更正这些问题会为您提供如下所示的内容:
/^('d{1,2})'/('d{1,2})'/('d{4}) ('d{1,2}):('d'd):('d'd) (a'.m'.|p'.m'.)$/
。然后,您将测试最后一个子表达式以调整 AM 或 PM 的小时数。
(注意:我认为您不希望分钟和秒允许个位数,因此我已将该部分更改为需要两位数。
相关文章:
- 在事件上打开Materialize Date Picker
- 在经过DATE验证的列中创建null值
- 如何将Date字段设置为等于另一个Date+Int值,该值表示月份值
- 为什么要做新的.Date()与new相差1小时.日期().到ISOString()
- 返回值+new Date()与Date.now()是否不同
- Javascript Date.toString() formatting?
- Javascript返回错误的Date值(NodeJS)
- date对象未在javascript中返回正确的日期值
- 当点击今天按钮时,Bootstrap Date Time Picker未选择当前时间
- 新Date()javascript的日期字符串
- JavaScript“new Date()”使用哪个时区
- Date对象未返回预期年份
- Date.js错误地分析了ISO 8601 UTC日期
- JS:如何将字符串(“2015年3月10日”)转换为Date对象
- Bootstrap-Datepicker not selecting date when using "set
- JS RegEx for date&名称规则
- 当绑定到Date()-对象时,如何格式化input[time]的值
- AngularJS:如何访问自定义指令中的input[date]min属性
- 使用Date.getTime()计算日期时出错
- jquery tablesorter addParser for complex date