明日 10:30:40
今日 14:00:08
6月8日 17:07:16
请问以上这些格式如何换算成下面这种时间格式
2023-6-2 10:30:40
2023-6-1 14:00:08
2023-6-8 17:07:16
用asp函数或者正则。
请问能做到吗?
可能难度很大,希望有超级高手帮忙。
谢谢。
我不太懂asp是啥,用js实现了一下,处理了了一些异常情况,目前从结果来看应该能满足你的需求。 当前 我的正则对 x月x 和 时间的校验不是很严格,你完全可以再修改一下。
如果能帮到你,帮我点个小赞,哈哈哈
function formatTime(dateStr = '') {
if(dateStr) {
const dateMatch = dateStr.replace(/^(([月\d]{3,5})|([前今明后]))日(\s[0-9:]{8})$/, (match, p1, p2, p3, time) => {
let date = ''
if(p1.length === 1) {
const dateMap = {
'前': -2,
'昨': -1,
'明': 1
};
const count = dateMap[p1] || 0;
const today = new Date().getDate()
const dateNum = today + count;
const current = new Date();
current.setDate(dateNum);
date = new Date(current).toLocaleDateString();
}else {
const year = new Date().getFullYear();
const mon = p1.split('月')[0];
const day = p1.split('月')[1];
const current = new Date()
current.setMonth(mon - 1);
current.setDate(day);
date = new Date(current).toLocaleDateString();
}
const resStr = date + time;
const str = new Date(date + time).toLocaleString()
console.log('end: ', dateStr, ' => ', str);
return str;
})
return dateMatch
}
}
console.log(formatTime('明日 10:30:40')); // 2023/6/2 10:30:40
console.log(formatTime('今日 14:00:08')); // 2023/6/1 14:00:08
console.log(formatTime('6月8日 17:07:16')); // 2023/6/8 17:07:16
// 稍微有些特殊的情况
console.log(formatTime('0月1日 17:07:16')); //2022/12/1 17:07:16
console.log(formatTime('12月35日 17:07:16')); // 2024/1/4 17:07:16
console.log(formatTime('13月3日 17:07:16')); // 2024/1/3 17:07:16
对于今日new Date()就行,然后转成年月日
function formatDateTime() {
const d = new Date();
const year = d.getFullYear();
const month = d.getMonth() + 1;
const date = d.getDate();
const hours = d.getHours();
const minutes = d.getMinutes();
const seconds = d.getSeconds();
return `${year}-${month}-${date} ${hours}:${minutes}:${seconds}`;
}
昨日就是今日减去一,对于几月几日将月和日字替换成-就行
Wed Jun 14 15:45:47 +0800 2023
怎么把数组arr转换成obj对象这种格式呢 我这样处理只能获取第一层数据
三个元素 前两个居中 第三个靠右显示
我试图找到一个简单问题的直接答案...在这里它是... 假设你有一个硬币更换算法,在面值为d(1)=1、d(2)=7和d(3)=10的系统中,n=10。 现在给出了教科书中算法的实现。。 结果会不会是:“使用10枚面额为1的硬币”? 这是因为当然,以我的理解,denom[1]=1,denom[2]=7,denom[3]=10。正确吗? 如果是这样的话,这个算法就不会被认为是最优的,对吗? 但是,代
想要的结果: 刚刚问的那个搞错了 谢谢大家,我自己搞出来了已经,
把汉字 “我是中国人” 转成 &#数字; 这种格式! 浏览器上显示是正常的文字,查看源代码就是 &#数字;&#数字;&#数字;&#数字;&#数字;