删除javascript中的字符串

删除javascript中的字符串,javascript,Javascript,我有一个网址说 现在,我想单独删除&src=test&part。我知道我们可以使用indexof,但不知何故,我无法获得获取下一个符号(&)并单独删除该部分的想法。 任何帮助。新的URL应该如下所示 用这个怎么样 这假设“any”字符将位于“=”之后和下一个“&”之前,但如果您知道它可能是什么,则始终可以将更改为字符集-使用[] 这还假设由于+,在“=”之后但在“&”-之前至少有一个字符。但如果您认为字符串可能是“src=&img=test”,则可以将其更改为* 更新: 对于此问题,使用sp

我有一个网址说

现在,我想单独删除&src=test&part。我知道我们可以使用indexof,但不知何故,我无法获得获取下一个符号(&)并单独删除该部分的想法。 任何帮助。新的URL应该如下所示


用这个怎么样

这假设“any”字符将位于“=”之后和下一个“&”之前,但如果您知道它可能是什么,则始终可以将
更改为字符集-使用
[]

这还假设由于
+
,在“=”之后但在“&”-之前至少有一个字符。但如果您认为字符串可能是“src=&img=test”,则可以将其更改为
*

更新

对于此问题,使用
split
可能是正确的选择,但前提是
src=which
的位置仍然在“&&&”之后,但未知……例如,如果它是“&&img=test&src=test”。因此,只要始终存在“&&”以将静态部分与要更新的部分分开,您就可以使用如下内容:


这仍然假设了一些事情-主分割是“&&”…键是“src”,然后是“=”,然后是0个或更多字符…当然,键/值对由“&”分隔。如果你的问题没有这么广泛,那么我的第一个答案似乎很好。如果“src=test”不总是排在“&&”之后,则需要使用更“复杂”的正则表达式或此
split
方法。

如何使用此方法

这假设“any”字符将位于“=”之后和下一个“&”之前,但如果您知道它可能是什么,则始终可以将
更改为字符集-使用
[]

这还假设由于
+
,在“=”之后但在“&”-之前至少有一个字符。但如果您认为字符串可能是“src=&img=test”,则可以将其更改为
*

更新

对于此问题,使用
split
可能是正确的选择,但前提是
src=which
的位置仍然在“&&&”之后,但未知……例如,如果它是“&&img=test&src=test”。因此,只要始终存在“&&”以将静态部分与要更新的部分分开,您就可以使用如下内容:

这仍然假设了一些事情-主分割是“&&”…键是“src”,然后是“=”,然后是0个或更多字符…当然,键/值对由“&”分隔。如果你的问题没有这么广泛,那么我的第一个答案似乎很好。如果“src=test”不总是排在“&&”之后,则需要使用更“复杂”的正则表达式或此
split
方法。

类似于:

url = "http://www.google.com/?v=as12&&src=test&img=test"
firstPart = url.split('&&')[0];
lastPart = url.split('&&')[1];
lastPart = lastPart.split('&')[1];
newUrl = firstPart+'&'+lastPart;
document.write(newUrl);
比如:

url = "http://www.google.com/?v=as12&&src=test&img=test"
firstPart = url.split('&&')[0];
lastPart = url.split('&&')[1];
lastPart = lastPart.split('&')[1];
newUrl = firstPart+'&'+lastPart;
document.write(newUrl);

详细信息:使用拆分方法

解决方案已编辑:我更改了以下内容,以测试最后一个查询字符串是否存在

var url = "http://www.google.com/?v=as12&&src=test&img=test";
var newUrl;

var splitString = url.split('&');

if (splitString.length > 3)
{
   newURL = splitString[0] + "&" + splitString[3];
}
else
{
   newURL = splitString[0];
}

详细信息:使用拆分方法

解决方案已编辑:我更改了以下内容,以测试最后一个查询字符串是否存在

var url = "http://www.google.com/?v=as12&&src=test&img=test";
var newUrl;

var splitString = url.split('&');

if (splitString.length > 3)
{
   newURL = splitString[0] + "&" + splitString[3];
}
else
{
   newURL = splitString[0];
}

var mystring=“”;mystring=mystring.replace(/\&src.&\}/,“”);警报(mystring);您是否尝试了javascript replace()方法,可能是helps@Harish:是的,作为答案发布…这不起作用unfortunately@Harish:它怎么不工作?您可以发布测试用例吗?var mystring=“”;mystring=mystring.replace(/\&src.&\}/,“”);警报(mystring);您是否尝试了javascript replace()方法,可能是helps@Harish:是的,作为答案发布…这不起作用unfortunately@Harish:它怎么不工作?你能发布测试用例吗?@Harish你确定在
src=test
之后会有一个
&key=value
吗?@Harish好的,我只是想确定一下,因为如果它前面没有“&&”,后面没有“&”,你可能需要使用一个修改过的正则表达式或split方法来让它工作。这就是我的全部意思:)@ianpgall-回答得好!Harish-如果您的需求在没有最后一个查询字符串的情况下发生变化,请查看我的answer@Harish我刚刚用
split
更新了我的答案。看起来我的原始答案应该适合你,但是一个更灵活的
url
可能需要一个更复杂的正则表达式,或者像我提供的那样使用
split
。@Harish你确定在
src=test
之后会有一个
&key=value
吗?@Harish好的,我只是想确定一下,因为如果没有“&&”在它之前和”&“之后,您可能需要使用修改后的正则表达式或拆分方法才能使其正常工作。这就是我的全部意思:)@ianpgall-回答得好!Harish-如果您的需求在没有最后一个查询字符串的情况下发生变化,请查看我的answer@Harish我刚刚用
split
更新了我的答案。看起来我的原始答案应该适合您,但是更灵活的
url
可能需要更复杂的正则表达式,或者像我提供的那样使用
split
var url = "http://www.google.com/?v=as12&&src=test&img=test";
var newUrl;

var splitString = url.split('&');

if (splitString.length > 3)
{
   newURL = splitString[0] + "&" + splitString[3];
}
else
{
   newURL = splitString[0];
}