我的日期时间低于
df.to_excel("yourfile.xlsx", index=True)
和21.08.29可以是任何字符串,具体取决于用户选择数据的时间。我想用11:59:59替换这个21:08:29所以输出应该是。
Wed Jun 13 2018 21:08:29 GMT-0700 (Pacific Daylight Time)
任何想法,
答案 0 :(得分:1)
您可以通过正则表达式解析它的示例代码
var originalText = 'Wed Jun 13 2018 21:08:29 GMT-0700 (Pacific Daylight Time)';
var replacedText = originalText.replace(/[0-9]{2}:[0-9]{2}:[0-9]{2}/,'11:59:59');
[0-9] - 任意数字
{2} - [0-9]
的字符串长度但是,如果您的字符串是日期类型变量,或者可以存储在日期类型变量
中var newVar = new Date( 'Jun 13 2018 21:08:29 GMT-0700');
newVar.setHours(11);
newVar.setMinutes(59);
newVar.setSeconds(59);
会给Jun 13 2018 11:59:59 GMT-0700
也会做的伎俩
答案 1 :(得分:0)
为什么不使用正则表达式?
var str = /*(DateTime string)*/;
var _regex = [0-9]{2}:[0-9]{2}:[0-9]{2};
var newstr = str.replace(_regex, /*(Time what you want)*/);
但是,您提供的字符串似乎是Date
个对象,因此请考虑使用它的成员函数。
这可能会有所帮助:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
答案 2 :(得分:0)
假设您正在寻找24小时强制性领先0:
var newvalue='11:59:59';
Var str='Wed Jun 13 2018 21:08:29 GMT-0700 (Pacific Daylight Time)';
var replacedStrign=str.replace(/^(?:2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]$/, newvalue)
答案 3 :(得分:0)
您可以将字符串转换为日期对象,操纵该日期对象,然后转换回字符串。
const time = new Date("Wed Jun 13 2018 21:08:29 GMT-0700 (Pacific Daylight Time)")
time.setHours(11)
time.setMinutes(59)
time.setSeconds(59)
time.toString() // "Wed Jun 13 2018 11:59:59 GMT-0600 (Mountain Daylight Time)"
编辑:我意识到这个解决方案会丢失时区信息,但在某些情况下仍然可能是一种有用的方法。