我有以下文本字符串:
test-shirt-print
我想过滤文本字符串,使其仅返回我:
test-shirt
意味着删除第二个连字符之后的所有内容,包括连字符。
我认为解决方案可能是使用连字符,然后以某种方式选择两个第一个值。
答案 0 :(得分:1)
您可以使用分割切片并将其连接在一起以删除第二个连字符之后的所有内容
var str = "test-shirt-print";
console.log(str.split("-").slice(0, 2).join('-'))
答案 1 :(得分:0)
您可以尝试使用String.prototype.slice()
slice()
方法提取字符串的一部分并将其作为新字符串返回,而无需修改原始字符串。
和String.prototype.lastIndexOf()
lastIndexOf()
方法从指定索引的最后一次出现返回调用String对象中最后一次出现的索引。如果找不到该值,则返回-1。
var str = 'test-shirt-print';
var res = str.slice(0, str.lastIndexOf('-'));
console.log(res);
您还可以使用split()
来获取前两个项目并加入它们:
var str = 'test-shirt-print';
var res = str.split('-').slice(0,2).join('-');
console.log(res);