C# を使用して文字列内の各 " " の間のコンマ ',' を削除するにはどうすればよいですか?
私は試してみました:
string result = Regex.Replace(input,
@",([^""]$)",String.Empty);
しかし、うまくいきません...
感謝
私の考えは、「引用符」で分割して、各不均等なインデックス要素が引用符の間にあるものになるようにすることです。それらを調べて、コンマを何も置き換えずに、すべてを単一の文字列に再結合すると、うまくいくはずです。
var parts = input.Split('"');
for (var i = 1; i < parts.Length; i += 2)
{
parts[i] = parts[i].Replace(",", "");
}
var result = string.Join("\"", parts);
入力文字列がどのように見えるかについて少し混乱していますが、カンマの単純な置換を試みている限り、試すことができます
var result = input.replace(",","");
// 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('"');
}