1

如何使用 C# 删除字符串中每个 "" 之间的逗号 ','?

我尝试过:

string result = Regex.Replace(input,
@",([^""]$)",String.Empty);

但它不起作用......

感谢

4

3 回答 3

5

我的想法是用“引号”分割,这样每个索引不均匀的元素都会在引号之间。通过这些,用逗号替换它们,然后将所有内容重新连接到一个字符串,应该可以解决问题:

var parts = input.Split('"');

for (var i = 1; i < parts.Length; i += 2)
{
    parts[i] = parts[i].Replace(",", "");
}

var result = string.Join("\"", parts);
于 2012-08-06T02:16:03.003 回答
1

我对您的输入字符串的外观有些困惑,但是只要您尝试简单地替换逗号,您就可以尝试

var result = input.replace(",","");
于 2012-08-06T02:01:59.337 回答
0
// extract the fields
    Regex CSVParser = new Regex(",(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))");
    String[] Fields = CSVParser.Split(Test);


    // clean up the fields (remove " and leading spaces)
    for (int i = 0; i < Fields.Length; i++)
    {
        Fields[i] = Fields[i].TrimStart(' ', '"');
        Fields[i] = Fields[i].TrimEnd('"');
    }
于 2012-08-06T03:06:24.047 回答