iMacros脚本日期格式转换求助:MM-DD-YYYY转MMM DD, YYYY
iMacros日期格式转换问题求助
我正在用iMacros脚本处理从CSV文件提取的数据,需要把「08-24-2022」(MM-DD-YYYY)格式的日期转换成「Aug 24, 2022」(MMM DD, YYYY)格式。试了下面的代码没成功,求技术支持:
SET date "08-24-2022" SET dateFormatted EVAL("\"{{date}}\".replace(/(\\d{4})-(\\d\\d)-(\\d\\d)/, \"$2 $3, $1\");") PROMPT {{dateFormatted}}
使用环境:
- Google Chrome 105.0.5195.102(64位官方版)
- iMacros个人版Chrome插件V10.1.1
- Windows 10(64位)
问题分析与解决方案
你当前的代码存在两个核心问题:
- 正则表达式匹配的是
YYYY-MM-DD格式,但你的输入是MM-DD-YYYY,导致匹配失败,无法完成替换。 - 单纯的字符串替换无法生成月份的英文缩写(比如把
08转成Aug)。
可以用以下代码实现需求:
SET date "08-24-2022" SET dateFormatted EVAL("var dateParts = '{{date}}'.split('-'); var monthNames = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']; monthNames[parseInt(dateParts[0]) - 1] + ' ' + dateParts[1] + ', ' + dateParts[2];") PROMPT {{dateFormatted}}
代码说明:
- 用
split('-')将日期字符串拆分为月份、日期、年份三个部分。 - 定义包含月份英文缩写的数组,通过月份数字(减1是因为数组索引从0开始)获取对应缩写。
- 拼接各部分生成目标格式的日期字符串。
内容的提问来源于stack exchange,提问作者Ionut Bejinariu
相关产品推荐
相关产品推荐

