删除javascript/jquery中字符串的一部分?
假设我有这样的东西:删除javascript/jquery中字符串的一部分?,javascript,jquery,string,Javascript,Jquery,String,假设我有这样的东西: var location='/users/45/messages/current/20/ 我需要以这样的方式结束: '/45/messages/current/20/' 因此,我需要删除/whatever/ 我可以使用jquery和/或javascript。如何以最好的方式执行此操作?使用JavaScript的slice()命令。您需要解析从何处切片,还是它是一个已知的前缀?根据解析的具体目的,可以使用match()查找模式。使用JavaScript的slice()命令。您
var location='/users/45/messages/current/20/代码>
我需要以这样的方式结束:
'/45/messages/current/20/'
因此,我需要删除/whatever/
我可以使用jquery和/或javascript。如何以最好的方式执行此操作?使用JavaScript的slice()命令。您需要解析从何处切片,还是它是一个已知的前缀?根据解析的具体目的,可以使用match()查找模式。使用JavaScript的slice()命令。您需要解析从何处切片,还是它是一个已知的前缀?根据解析的具体目的,可以使用match()查找模式。替换第二个斜杠之前的所有内容:
location.replace("/(whatever|you|want|users|something)/", "");
var i = location.indexOf("/", 1); //Start at 2nd character to skip first slash
var result = location.substr(i);
要替换第二个斜杠之前的所有内容,请执行以下操作:
var i = location.indexOf("/", 1); //Start at 2nd character to skip first slash
var result = location.substr(i);
在字符串中找到“/”的第二个索引,然后从索引到结尾使用substr。在字符串中找到“/”的第二个索引,然后从索引到结尾使用substr。您可以使用正则表达式,或者可能更可读的表达式
location.replace(/\/.*?\//, "/");
var location = '/users/45/messages/current/20/';
var delim = "/"
alert(delim+location.split(delim).slice(2).join(delim))
您可以使用正则表达式,或者可能更可读的
var location = '/users/45/messages/current/20/';
var delim = "/"
alert(delim+location.split(delim).slice(2).join(delim))
如果您总是想消除相对路径的第一部分,那么使用正则表达式可能是最简单的
var loc = '/users/45/messages/current/20/';
loc.replace(/^\/[^\/]+/,'');
如果您总是想消除相对路径的第一部分,那么使用正则表达式可能是最简单的
var loc = '/users/45/messages/current/20/';
loc.replace(/^\/[^\/]+/,'');
不要声明var位置
,因为它可能会与window.location
混淆,具体取决于作用域。只需注意,通过命名变量location
,它将阴影window.location
(当然,您可以始终通过window.location
访问该变量)。不要声明变量位置
,因为它可能会与窗口.位置
混淆,具体取决于作用域。请注意,通过命名变量位置
,它将隐藏窗口.位置
(当然,您可以始终通过窗口.位置
)进行访问。+1,拆分/切片/连接可能是我的选择。或者是substr方法。+1,split/slice/join可能是我要使用的方法。要么是那样,要么就是substr方法。