如何在javascript中的“:”之前删除部分字符串?

IT技术 javascript
2021-03-16 23:45:48

如果我有一个字符串Abc: Lorem ipsum sit amet,我如何使用 JavaScript/jQuery 在:包含:. 例如上面的字符串将变成:Lorem ipsum sit amet.

2个回答

这里不需要 jQuery,普通的 JavaScript 就可以做到:

var str = "Abc: Lorem ipsum sit amet";
str = str.substring(str.indexOf(":") + 1);

或者,.split().pop()版本:

var str = "Abc: Lorem ipsum sit amet";
str = str.split(":").pop();

或者,正则表达式版本(它的几个变体):

var str = "Abc: Lorem ipsum sit amet";
str = /:(.+)/.exec(str)[1];
很好的答案,我喜欢不同的解决方案
2021-04-18 23:45:48
请注意,如果:字符串中有多个,则第二个变体将返回最后一个之后的字符串,而不是其他变体中的第一个。不幸的是,JS 的split()方法中没有 split-only-n-times 选项,这将允许您执行 Python 风格的.split(':', 1)[1]. (这里一个可选的number参数,但它不会做什么任何理智的人所期望的。)
2021-04-22 23:45:48
您可以根据分隔符拆分和合并删除一些元素。 "Abc:Lorem_ipsum_sit_amet".split(':').slice(1).join('.');
2021-04-25 23:45:48
嗨,在 jQuery 中,我有这个变量,我想删除字符“|”之后的所有内容。我已经能够通过使用这个来定位字符串:var str = $('.order-product-list.align-left.box-content.any-1-1 > ul > li:nth-child(1) > div > dl.align-left > dd:nth-child(8)'); 我该怎么做?该字符之后的内容是动态的,取决于网页上的用户。我想在 | 之后隐藏/删除最后一部分
2021-05-03 23:45:48
@bobince - 你是对的,我在这里假设他有一个一致的label: something格式,如果不是这样,我会选择第一个选项。
2021-05-05 23:45:48

作为尼克的回答的后续如果您的字符串包含多次出现:并且您希望只在第一次出现之前删除子字符串,那么这是方法:

var str = "Abc:Lorem:ipsum:sit:amet";
arr = str.split(":");
arr.shift();
str = arr.join(":");
// str = "Lorem:ipsum:sit:amet"