怎么过滤最后一次出现/和/后面的字符

CaixK
  • 511

怎么过滤最后一次出现/和/后面的字符

/AAA/BBB/CCC  => /AAA/BBB
回复
阅读 715
3 个回答

正则

'/AAA/BBB/CCC'.replace(/(.*?)(\/[^\/]+)$/, '$1')

如果只有一个/和/后面的字符不需要过滤,可以这样

'/CCC'.replace(/(.*?)(\/[^\/]+)(\/[^\/]+)$/, '$1$2')

sobright
  • 2k

我看 javascripter 都偏好 fp,试着用另外的思路写了一下,应用 arrow function 后看起来还挺清爽的
['/a/b/c', '/a', '/a/', 'a'].map(x => x.slice(0, (i => i < 1 ? x.length : i)(x.lastIndexOf('/'))))

vej4ntmg
  • 2
新手上路,请多包涵

"/AAA/BBB/CCC".split("/").slice(0,-1).join("/")

宣传栏