Javascript 如何删除字符串的一部分?

Javascript 如何删除字符串的一部分?,javascript,string,Javascript,String,假设我有test\u23,我想删除test\u23 我该怎么做 前面的前缀可以更改。假设字符串始终以'test.开头: var str = 'test_23'; alert(str.substring('test_'.length)); 我最喜欢的方法是“拆分和弹出”: 使用指定的分隔符字符串将字符串拆分为字符串数组。 从数组中删除最后一个元素并返回该元素 string = "test_1234"; alert(string.substring(string.indexOf('_')+1));

假设我有
test\u23
,我想删除
test\u23

我该怎么做


前面的前缀可以更改。

假设字符串始终以
'test.
开头:

var str = 'test_23';
alert(str.substring('test_'.length));

我最喜欢的方法是“拆分和弹出”:

使用指定的分隔符字符串将字符串拆分为字符串数组。
从数组中删除最后一个元素并返回该元素

string = "test_1234";
alert(string.substring(string.indexOf('_')+1));
如果字符串没有下划线,它甚至可以工作。在

我认为最简单的方法是:

var s = yourString.replace(/.*_/g,"_");

如果要删除字符串的一部分

let str = "try_me";
str.replace("try_", "");
// me
let str = "try_me";
str.replace("try_", "test_");
// test_me
如果要替换字符串的一部分

let str = "try_me";
str.replace("try_", "");
// me
let str = "try_me";
str.replace("try_", "test_");
// test_me
我认为replace可以像一个自己的函数一样做同样的事情。对我来说,这很有效。

我想从a href中删除
“www.”
,所以我这样做了:

const str=”https://www.example.com/path";
str.split(“www.”)join(“”);
// https://example.com/path

假设
不会改变

var str=“test_23”;
var strWithoutPrefix=str.split(“uquo”)
strWithoutPrefix.shift();

console.log(strWithoutPrefix)//23
如果它不是以test开头怎么办?请使用replace,但如果出现多个问题,则该选项无效。str.replace(“test_)”,“”);将返回一个新字符串,其中所有出现的“test_”都将被删除,因此如果只保证出现一次,则应该可以。但是,如果有多个,我将使用str=str.substring(0,str.indexOf(“test_uu”)+str.substring(str.indexOf(“test_u”)+5,str.length);我知道这是一篇老文章,但如果有人看到它,可能至少会在某个地方帮助一个人。这篇文章的开销比Andy E的答案要小,但代码要多。两者都有效,但我更喜欢这种方法。我身上的C程序员对在这个简单的拆分/弹出操作中创建和销毁的对象数量感到畏缩:)可能是:数组,2字符串,另一个数组,另一个字符串。@xgbi:是的,JavaScript和C开发人员有着截然不同的理念;-)您可以在回答中添加使用
alert(str.split(“”)[1])的可能性
因为
.split
创建了一个包含两个元素的数组,
[0]
位于
“\ucode>之前,而
[1]
之后。这实际上是我在寻找的,但是你的回答帮助我到达了那里^^@FernandoSilva那么,如果有两个“u”或更多,我们将得到3项数组,并且能够使用/删除第三项,对吗?顺便说一句,+1。这正是我要找的。@TheLightSabrix看看它的工作原理,这比试图在文本中解释要容易得多。也许你应该看看只有代码的答案几乎总是可以通过添加一些关于它们如何工作以及为什么工作的解释来改进的。格式化是很重要的。至少它的工作原理与同样使用replace的ontop不同。