我有一个显示来自数据库的信息的表。由于我们数据库的设置方式,日期必须以 dd/mm/yyyy 格式保存,但我们的客户希望某些日期仅显示在 mm/yyyy 格式中。我们不能更改生成表的 PL/SQL,也不能更改数据库结构/预期格式,因为数据库是整体产品的一部分。因此,我需要遍历页面上的所有锚元素,检查文本值是否与格式 dd/mm/yyyy 匹配,如果是,则运行一个子字符串来删除前 3 个字符,而不管它们是什么,只留下 mm/yyyy。
到目前为止,我已经尝试了以下代码:
$('table.work_section tr td a').each(function(){
var regEx = new RegExp("^\d{1,2}\/\d{1,2}\/\d{4}$");
if($(this).text().match(regEx) != null){
var newText = $(this).substring(3);
$(this).text(newText);
}
})
不幸的是,这似乎不起作用。有谁知道为什么?我的完整代码可以在这个小提琴中找到:
我还需要日期格式的正则表达式示例:01-OCT-2007
任何帮助将不胜感激,因为我讨厌正则表达式。