TING沫 2023-07-14 18:05 采纳率: 70.6%
浏览 55
已结题

js从一个不规范的字符串中截取字符串

来个人帮忙处理一下这个截取字符串的问题,太麻烦了,一点规范都没有还要前端处理自动填充到版本号的输入框展示,快给人整麻了

问题描述:有下面四个文件名的举例,需要截取版本号的字符串,截取字符 V 或者 v 后面两个 . 或者两个 _ 前后的数字,将 . 或者 _ 统一改成 . 并在截取的字符串前加上V

SR3511_300_v1_0_10_20230320.bin
SR3611_V1.0.9_2022_12_16.bin
SR3611_V01.07.9_2022_12_16.bin
SR3611_V10_02_10__2022_12_16.bin

结果举例

SR3511_300_v1_0_10_20230320.bin  为 V1.0.10
SR3611_V1.0.9_2022_12_16.bin  为 V1.0.9
SR3611_V01.07.9_2022_12_16.bin 为 V01.07.9
SR3611_V10_02_10__2022_12_16.bin 为 V10.02.10

  • 写回答

3条回答 默认 最新

  • Huazie 全栈领域优质创作者 2023-07-14 20:36
    关注

    先看截图:

    img

    参考如下:

    var str = "SR3511_300_v1_0_10_20230320.bin";
    
    var regex = /[V|v]\d+[.|_]\d+[.|_]\d+/;
    
    var match = regex.exec(str);
    
    if (match) {
      let result = match[0];
      console.log(result);
      console.log(result.replaceAll("_", "."));
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月18日
  • 已采纳回答 7月15日
  • 创建了问题 7月14日

悬赏问题

  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Linux权限管理相关操作(求解答)
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错
  • ¥25 自动填写QQ腾讯文档收集表
  • ¥15 DbVisualizer Pro 12.0.7 sql commander光标错位 显示位置与实际不符
  • ¥15 android 打包报错
  • ¥15 关于stm32的问题
  • ¥15 ncode振动疲劳分析中,noisefloor如何影响PSD函数?