如何用C#删除字符串中每个“”之间的逗号','?
我试过:
string result = Regex.Replace(input,
@",([^""]$)",String.Empty);
但它不起作用......
感谢
答案 0 :(得分:5)
我的想法是用“引号”拆分,这样每个不均匀索引元素都会在引号之间。 通过这些,用任何东西替换逗号,然后将所有内容重新连接到单个字符串,应该可以做到这一点:
var parts = input.Split('"');
for (var i = 1; i < parts.Length; i += 2)
{
parts[i] = parts[i].Replace(",", "");
}
var result = string.Join("\"", parts);
答案 1 :(得分:1)
我对你的输入字符串看起来有点困惑,但只要你试着做简单的逗号替换就可以试试
var result = input.replace(",","");
答案 2 :(得分: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('"');
}