-3

二重引用符の間にある場合は、CSVファイルの正規表現を使用してすべての二重引用符を削除したいと思います。現在、私はこれを行うために次の正規表現を使用しています:

inputString = Regex.Replace(inputString, @"([^\^,\r\n])""([^$,\r\n])", @"");

ただし、たとえば次のように、二重引用符が2つ以上ある場合は機能しません。

"This is my "test" string"(動作します)
"This "is" my "test" string"(動作しません)
"This is" my test string"(動作しません)

csvファイルの二重引用符の間の二重引用符を削除できる汎用正規表現が必要です。

4

3 に答える 3

3

コメントで私の提案は次のとおりstring.Replace("\"", "")です。これがフォーマットにならない場合はありますか? 最後に文字列を引用符で囲む必要があると回答しました。

これはまさに私が提案したことなので、より明確かつ明確にしようとしましょう。次のようなことをしてください:

inputString = "\"" + inputString.Replace("\"", "") + "\"";

これにより、すべての引用符が削除され、最終結果が必要な引用符で囲まれます。

于 2012-10-17T15:19:03.583 に答える
0

使ってみて

inputString = Regex.Replace(inputString, @"(?<=\".*)\"(?=.*\")", @""); 
于 2012-10-17T15:14:51.523 に答える
0

これを使って:

inputString = Regex.Replace(inputString, @"([^\^,\r\n])""(?=[^$,\r\n])", @"$1");
于 2012-10-17T15:20:33.300 に答える