截取字符串,用replace方法,正则怎么实现获取字符串最后一个反斜杠(包括)后的字符串?

let str = "F:\gkd\yyds\xccs"
console.log(str.replace(/.+(?=\\)/g,""))
我想用正则获取“\xccs”,最后一个反斜杠(包括)之后的内容
但是结果是“F:gkdyydsÌs” \xcc变成Ì,也没替换字母和其他符号
请问这个正则怎么写

不用正则的话lastIndexOf加slice

阅读 3.6k
2 个回答

正则:

let str = "F:\\gkd\\yyds\\xccs";
let result = str.replace(/.*\\/, '\\');
console.log(result); // 输出 "\xccs"

企业微信截图_16916338505196.png
用 lastIndexOf 和 slice :

let str = "F:\\gkd\\yyds\\xccs";
let result = str.slice(str.lastIndexOf('\\'));
console.log(result); // 输出 "\xccs"

企业微信截图_16916337225770.png

对于这种需求,用split方法分割字符串得到一个数组,然后取数组最后一个元素即可。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题