Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
删除javascript/jquery中字符串的一部分?_Javascript_Jquery_String - Fatal编程技术网

删除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方法。