为了账号安全,请及时绑定邮箱和手机立即绑定

正则表达式将日期附加到具有文件扩展名和没有文件扩展名的字符串

正则表达式将日期附加到具有文件扩展名和没有文件扩展名的字符串

Qyouu 2023-03-10 14:44:22
我有字符串,我需要将日期附加到具有文件扩展名和没有文件扩展名的字符串。例如水果水果.doc水果.docx水果.苹果.docx预期的结果是水果_18-9-2020Fruits_18-9-2020.docFruits_18-9-2020.docx水果.Apple_18-9-2020.docx我试过这个  var str = 'Fruits.txt';    var txt = str.replace(/$/i,"_123");但它给了我不正确的 Fruits.txt_123我该怎么做呢?
查看完整描述

1 回答

?
弑天下

TA贡献1818条经验 获得超7个赞

请改用此正则表达式:

str.replace(/(?=\.[^\.]+$)|(?<=^[^\.]+$)/, "_123");

在regex101上测试它!

说明:

  • |有扩展名(如 .doc,左侧部分:)(?=\.[^\.]+$)或没有扩展名(右侧部分(?<=^[^\.]+$):)的情况分开。

  • 扩展:获取结束前最后一个点的位置,并在匹配前插入附加字符串(使用前瞻)。

  • 没有扩展名:如果在结尾之前的整个字符串中没有点,则只需在末尾插入文本(使用后视)。


查看完整回答
反对 回复 2023-03-10
  • 1 回答
  • 0 关注
  • 77 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信