gpt4 book ai didi

Javascript trim 双斜线

转载 作者:行者123 更新时间:2023-11-29 17:39:44 25 4
gpt4 key购买 nike

我想将 //a/url/// trim 为 a/url。 Stackoverflow 上有一些问题,但它们不起作用,解决了另一个问题,或者太长太复杂。

下面的代码是基于 Javascript regular expression: remove first and last slash 的。

function trimSlashes(str) {
str = str.replace(/^\/|\/$/g, '');
return str.replace(/^\/|\/$/g, '');
};

然而,像这样复制代码并不是很好。正则表达式如何处理双斜杠?

测试用例

let str1 = trimSlashes('/some/url/here/');
let str2 = trimSlashes('//some/other/url/here///');

预期结果

some/url/here
some/other/url/here

心愿单

  • 只是一个正则表达式
  • 越短越好

最佳答案

这是另一种没有正则表达式但具有函数式风格的变体。我不知道性能如何,但我写得很开心而且看起来不那么神秘。

const newString = '//some/other/url/here///'
.split('/')
.filter(s => s)
.join('/')

编辑:

只是运行了一些性能测试,这比正则表达式慢,但如果谨慎使用,它可能无关紧要。

https://jsperf.com/regex-vs-functional/1

关于Javascript trim 双斜线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53805676/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com