如何在JavaScript中提取以'-'分隔的字符串末尾数字
JavaScript提取字符串末尾数字的实现
给定以下字符串:
generate-image-scanID-60 generate-image-scanID-4
需要提取以-作为分隔符的字符串末尾数字,最终得到60和4,以下是几种可行的实现方式:
方式一:split分割数组取最后项
通过split('-')将字符串按-拆分为数组,直接取数组最后一个元素并转换为数字:
const targetStrs = ['generate-image-scanID-60', 'generate-image-scanID-4']; const nums = targetStrs.map(str => { const segments = str.split('-'); return parseInt(segments[segments.length - 1], 10); }); console.log(nums); // 输出 [60, 4]
方式二:正则匹配末尾数字
使用正则表达式匹配字符串末尾的连续数字,精准提取目标内容:
const targetStrs = ['generate-image-scanID-60', 'generate-image-scanID-4']; const nums = targetStrs.map(str => { const matchResult = str.match(/\d+$/); return matchResult ? parseInt(matchResult[0], 10) : null; }); console.log(nums); // 输出 [60, 4]
方式三:lastIndexOf定位截取
找到最后一个-的位置,截取该位置之后的子串并转换为数字:
const targetStrs = ['generate-image-scanID-60', 'generate-image-scanID-4']; const nums = targetStrs.map(str => { const lastDashPos = str.lastIndexOf('-'); return parseInt(str.slice(lastDashPos + 1), 10); }); console.log(nums); // 输出 [60, 4]
内容的提问来源于stack exchange,提问作者stak banget
相关产品推荐
相关产品推荐

