c#如何拆分包含逗号字符串的CSV字符串

时间:2015-05-03 08:38:52

标签: regex c#-4.0

我有下面提到的CSV字符串,我需要用逗号分割。

Input:
A,"Rakesh,Gaur",B,"A,B",Z

OutPut:

A
Rakesh,Gaur
B
A,B
Z

2 个答案:

答案 0 :(得分:0)

您不能使用字符串拆分或正则表达式。如果您不打算使用已构建的库,则必须跟踪您是否是in_quotes。但正如你在开始之后会发现的那样:csv解析很复杂。你应该使用已经预先构建的东西。我记得在我编写一个严重依赖csv的应用程序时,有一些转义字符等等,你需要考虑。

psuedo代码的方式如下:

> build.py --toolchain xcode --verbose --config MinSizeRel --fwd "HUNTER_CONFIGURATION_TYPES=Release;Debug;MinSizeRel;RelWithDebInfo"
/.../clang  /.../lib/libz-MinSizeRel.a ... -o /.../_builds/xcode/MinSizeRel/foo

> ls -la /.../.hunter/_Base/d1232c0/326318e/37e4682/Install/lib/libz*
   99056 /.../.hunter/_Base/d1232c0/326318e/37e4682/Install/lib/libz-MinSizeRel.a
  307872 /.../.hunter/_Base/d1232c0/326318e/37e4682/Install/lib/libz-RelWithDebInfo.a
  109536 /.../.hunter/_Base/d1232c0/326318e/37e4682/Install/lib/libz.a
  258904 /.../.hunter/_Base/d1232c0/326318e/37e4682/Install/lib/libzd.a

答案 1 :(得分:0)

我认为您可以使用以下步骤执行此操作:

string[] words = yourStringInput.Split(',');
foreach (string word in words)
{
    Console.WriteLine(word);
}