Answers:
干得好
var yourString = "/installers/";
var result = yourString.substring(1, yourString.length-1);
console.log(result);
或者您可以.slice
按照Ankit Gupta的建议使用
var yourString = "/installers/services/";
var result = yourString.slice(1,-1);
console.log(result);
slice和substring的文档。
像这样使用slice可能更好:
string.slice(1, -1)
您可以对其进行正则表达式:
"string".replace(/^\/?|\/?$/, "")
"/installers/services/".replace(/^\/?|\/?$/, "") // -> installers/services
正则表达式说明:
-可选的第一个斜杠:^/?
,转义-> ^\/?
(^
字符串的均值开头)
-管道(|)可以读为or
-比末尾的选项斜杠-> /?$
,转义-> \/?$
($
字符串的均值结尾)
结合起来,就无法^/?|/$
逃脱。可选的第一个斜杠或可选的最后一个斜杠
您可以这样做:
"/installers/services/".replace(/^\/+/g,'').replace(/\/+$/g,'')
此正则表达式是一种具有与trim
许多语言中使用的功能相同的行为的常见方式。
修剪功能的可能实现是:
function trim(string, char){
if(!char) char = ' '; //space by default
char = char.replace(/([()[{*+.$^\\|?])/g, '\\$1'); //escape char parameter if needed for regex syntax.
var regex_1 = new RegExp("^" + char + "+", "g");
var regex_2 = new RegExp(char + "+$", "g");
return string.replace(regex_1, '').replace(regex_2, '');
}
它将删除/
字符串开头和结尾的所有内容。它处理类似///installers/services///
您也可以简单地执行以下操作:
"/installers/".substring(1, string.length-1);
用 .replace(/.*\/(\S+)\//img,"$1")
"/installers/services/".replace(/.*\/(\S+)\//img,"$1"); //--> services
"/services/".replace(/.*\/(\S+)\//img,"$1"); //--> services