JS:获取未正确格式化的字符串的第一个元素

时间:2017-09-27 16:11:12

标签: javascript

我有一系列格式错误的字符串,如这些

"apple" 
"white melon, "apple", pineapple" 
"coconut, "apple", banana, coconut 
"red orange","banana" 
red melon,"banana"

您有时会看到引号未正确使用。

基本上我不太了解REGEX,但我的目的是获取每个字符串的第一个元素(可以是一个字或更多!),因为它可以是"被引号(或双引号),逗号或任何内容包围......

我的理想输出是

apple
white melon
coconut
red orange
red melon

我想的可能是:

  1. 从所有引号中删除所有字符串,
  2. 然后使用indexOf在逗号第一次出现之前获取任何内容
  3. 是正确的吗?

2 个答案:

答案 0 :(得分:0)

Remove the quote characters

Split on comma character

Select the first

function getFirst(str) {
    return str.replace(/"/g, '').split(',')[0];
}

答案 1 :(得分:0)

您可以在javascript中使用RegEx。以下代码生成您需要的确切输出。



arr = ['"apple"', '"white melon, "apple", pineapple"', '"coconut, "apple", banana, coconut', '"red orange","banana"',
  'red melon,"banana"'
];



for (str in arr) {
  var patt1 = /[\w+\s*]+/;
  var result = arr[str].match(patt1);
  console.log(result[0]);
}