データベースからデータを読み取った後、CSV ファイルを生成しようとしています。個々のデータにコンマ、一重引用符、および二重引用符を含めることができるようになりました。
正規表現を使用してその状況をどのように処理できますか、アドバイスをお願いします。
データベースからデータを読み取った後、CSV ファイルを生成しようとしています。個々のデータにコンマ、一重引用符、および二重引用符を含めることができるようになりました。
正規表現を使用してその状況をどのように処理できますか、アドバイスをお願いします。
最も簡単な方法は、すべてのデータを引用符で囲むことです。そうすれば、問題なくデータにコンマ、引用符 (二重引用符)、および改行を含めることができます。
データ内の引用符を二重引用符に置き換えてエスケープするだけです。そのための正規表現は必要ありません。通常の文字列置換を使用するだけです。
アポストロフィ(シングル クォーテーション)は、CSV 形式では特別な意味を持たないため、問題ありません。
CSV ファイルに別のセパレータを使用できますか? パイプ ( | ) でしょうか。
コンマは文字列を示すために二重引用符で囲まれているため、実際には問題にはなりません。一重引用符についても同じです。二重引用符をエスケープするだけです。次に例を示します。
ジョーは、「今すぐ家に帰って、遅刻しないでください。私は『大きな』トラブルに巻き込まれるでしょう」と言いました。
になるだろう
「ジョーは言った、「今すぐ家に帰って、遅刻しないでください。私は『大きな』トラブルに巻き込まれるでしょう」」
機能的な CSV パーサーを作成するのは簡単ではありませんが、データ形式は非常に単純です。代わりに、これにはライブラリの使用を検討してください。私はCSVReader ライブラリを使用しましたが、とても簡単です。このサイトには、コード サンプルも含まれています。