我有一个模糊的字符串:
foo,bar,c;qual="baz,blurb",d;junk="quux,syzygy"
Run Code Online (Sandbox Code Playgroud)
我想用逗号分割 - 但我需要在引号中忽略逗号.我怎样才能做到这一点?好像正则表达式方法失败了; 我想我可以在看到引号时手动扫描并进入不同的模式,但是使用预先存在的库会更好.(编辑:我想我的意思是已经是JDK的一部分或已经是Apache Commons等常用库的一部分的库.)
上面的字符串应该分成:
foo
bar
c;qual="baz,blurb"
d;junk="quux,syzygy"
Run Code Online (Sandbox Code Playgroud)
注意:这不是CSV文件,它是包含在具有更大整体结构的文件中的单个字符串
我有一个字符串:
Hi there, "Bananas are, by nature, evil.", Hey there.
Run Code Online (Sandbox Code Playgroud)
我想用逗号作为分隔符分割字符串。如何让 .split 方法忽略引号内的逗号,以便它返回 3 个字符串而不是 5 个。
我正在用 Java 编码,并且有一个方法可以返回一个如下所示的字符串:
0, 2, 23131312,"This, is a message", 1212312
Run Code Online (Sandbox Code Playgroud)
我希望字符串像这样吐出:
["0", "2", "23131312", "This, is a message", "1212312"]
Run Code Online (Sandbox Code Playgroud)
当我在逗号上使用拆分字符串方法时,它也会拆分“这是一条消息”,这是我不想要的。如果可能,我希望它忽略那个特定的逗号并去掉双引号。
我查了一些答案,CSV 似乎是这样做的方法。但是,我没有正确理解它。
我正在尝试拆分一个包含连续逗号以及用引号括起来的逗号的字符串,但无法完全获得我想要的结果。这是我拥有的字符串的示例:
\n\nvar str = \xe2\x80\x9810,Apple,"Sweet Gala apple, from Australia",,,,,,in stock,3.99\xe2\x80\x99
其中第三个元素在引号内有一个逗号,后跟多个逗号。
\n\n我想在两种情况下用逗号分割字符串:1)不要分割引号内的逗号2)彼此相邻的多个逗号之间应被视为空格
\n\n当我使用下面的正则表达式时:
\n\nstr.match(/(".*?"|[^,]+)/g)\n
Run Code Online (Sandbox Code Playgroud)\n\n结果出现在下面的数组中,满足第一个条件,但未能在连续逗号之间插入空格
\n\n["10","Apple",""Sweet Gala apple, from Australia"","in stock","3.99"]\n
Run Code Online (Sandbox Code Playgroud)\n\n我希望它看起来像:
\n\n["10","Apple",""Sweet Gala apple, from Australia"",\'\',\'\',\'\',\'\',\'\',"in stock","3.99"] \n
Run Code Online (Sandbox Code Playgroud)\n\n我需要做什么才能满足以上两个条件?
\n我需要一个 JavaScript 正则表达式,在单引号或双引号外用分号分隔字符串。
实际上,我正在使用以下正则表达式/(?!\B['"][^'"]*);(?![^'"]*['"]\B)/gm
,遗憾的是它并不能涵盖所有情况。
我需要的:
const string = `Lorem ipsum; "dolor sit; amet"; consectetur 'adipiscing; elit.' Fusce; sit amet ligula.; Phasellus in laoreet quam.`;
const resultArr = string.split(/THEREGEX/gm);
console.log(resultArr);
// ["Lorem ipsum", "\"dolor sit; amet\"", " consectetur 'adipiscing; elit.' Fusce", "sit amet ligula.", " Phasellus in laoreet quam."]
Run Code Online (Sandbox Code Playgroud) 我有一个 Typescript 文件,它采用 csv 文件并使用以下代码拆分它:
var cells = rows[i].split(",");
我现在需要解决这个问题,以便引号内的任何逗号都不会导致拆分。例如,The,"quick, brown fox", jumped
应该拆分为The
, quick, brown fox
, 和jumped
而不是也拆分quick
和brown fox
。执行此操作的正确方法是什么?