我想知道如何删除Javascript字符串的第一个和最后一个字符。

我的url显示/installers/,我只想要安装程序。

有时它会是/installers/services/,我只需要installers/services。

所以不能简单地去掉斜杠/。


当前回答

如果需要删除字符串的第一个字母

string.slice(1, 0)

并且去掉最后一个字母

string.slice(0, -1)

其他回答

url=url.substring(1,url.Length-1);

通过这种方式,您可以使用目录,如果它是…/…/…等。

给你

var yourString = “/installers/”; var result = yourString.substring(1, yourString.length-1); 控制台.log(结果);

或者你也可以按照Ankit Gupta的建议使用.slice

var yourString = “/installers/services/”; var result = yourString.slice(1,-1); 控制台.log(结果);

片和子字符串的文档。

如果你不总是有一个开始或结束斜杠,你可以正则化它。虽然正则表达式比简单的替换/切片更慢,但它有更多的逻辑空间:

"/installers/services/".replace(/^\/?|\/?$/g, "") 

# /installers/services/ -> installers/services
# /installers/services -> installers/services
# installers/services/ -> installers/services

正则表达式解释说:

['以' ^]开头+[可选?+[斜杠]:^/?,已转义-> ^\/? 管道(|)可以读取为或 ['以' $]+[可选?]+[斜杠]-> /?$, escaped -> \/?$

合起来就是^/?|/$没有逃脱。可选的第一个斜杠或可选的最后一个斜杠。 从技术上讲,这不是“可选的”,而是“零倍或一倍”。

可以使用子字符串方法

s = s.substring(0, s.length - 1) //removes last character

另一种方法是切片法

我不认为jQuery与此有任何关系。不管怎样,试试下面的方法:

url = url.replace(/^\/|\/$/g, '');