3

我正在尝试过滤掉第一个逗号及其之前的所有内容。我应该只使用正则表达式还是拆分工作?

// notice multiple commas, I'm trying to grab everything after the first comma.
str = 'jibberish, text cat dog milk, chocolate, rainbow, snow',

// this gets the text from the first comma but I want everything after it. =(
result = str.split(',')[0];
4

5 回答 5

1

您可以简单地使用子字符串来提取所需的字符串。

现场演示

result = str.substring(str.indexOf(',')+1); //add 2 if you want to remove leading space

如果您出于任何原因想使用 split

现场演示

result = str.split(',')[0];    
result = str.split(result+",")[1];
于 2013-01-19T16:08:14.377 回答
1
// Convert to array
var arr = str.split(',');

// Remove first element of array
arr.splice(0, 1);

// Convert back to string
var newString = arr.join(', ');
于 2013-01-19T16:08:15.137 回答
1

如何使用substringand indexOf

str = str.substring(str.indexOf(",") + 2);

示例:http: //jsfiddle.net/ymuJc/1/

于 2013-01-19T16:10:46.367 回答
1

而不是拆分,试试这个 - 它不会与第一个逗号以外的任何其他逗号混淆

var result = str.substring(str.indexOf(",")+1)

如果要跳过前导空格,请使用 +2

如果您不确定是否总是有逗号,则进行修剪更安全

var result = str.substring(str.indexOf(",")+1).trim();
于 2013-01-19T16:11:54.320 回答
0

你可以使用substrindexOf

str = 'jibberish, text cat dog milk, chocolate, rainbow, snow'

result = str.substr(str.indexOf(',')+1, str.length)
于 2013-01-19T16:11:37.987 回答