C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: 正規表現に関する質問


(過去ログ 178 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■102362 / inTopicNo.1)  正規表現に関する質問
  
□投稿者/ あぷ (1回)-(2023/09/07(Thu) 21:10:29)

分類:[.NET 全般] 

https://qiita.com/ELIXIR/items/ad4f998facfdeaa4ba14

このページにありますように、
カンマ区切りのテキストデータをスプリットする際に
""で区切られている場合に、まとめたい場合には、

Regex reg = new Regex(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)");

とすればできます。

一方で、""あるいは''のいずれかで区切られている場合に
まとめたい場合にはどのようにしたら良いですか?


引用返信 編集キー/
■102363 / inTopicNo.2)  Re[1]: 正規表現に関する質問
□投稿者/ WebSurfer (2787回)-(2023/09/07(Thu) 22:27:13)
No102362 (あぷ さん) に返信

> カンマ区切りのテキストデータをスプリットする際に
> ""で区切られている場合

> 一方で、""あるいは''のいずれかで区切られている場合に

意味が分かりません。

以下の記事の「CSV形式とは?」のセクションの 4, 5, 6, 7, 8 の対応の話ですか?

CSV形式のファイルをDataTableや配列等として取得する
http://dobon.net/vb/dotnet/file/readcsvfile.html

であれば、自力で正規表現で何とかしようとしないで、上の記事に書いてあるような
TextFieldParser クラスなど既存の CSV パーサーを使ってはいかがですか?

正規表現の勉強をしたいなどの理由であれば話は違うかもしれませんが、実用的かつ
現実的な対応は CSV パーサーを使うという話になると思います。

正規表現にこだわるのであれば、上の記事の「正規表現を使った方法」のセクション
が参考になるかもしれません。(検証はしていませんが)
引用返信 編集キー/
■102381 / inTopicNo.3)  Re[2]: 正規表現に関する質問
□投稿者/ すば (2回)-(2023/09/15(Fri) 16:04:42)
No102363 (WebSurfer さん) に返信
> ■No102362 (あぷ さん) に返信
>
>>一方で、""あるいは''のいずれかで区切られている場合に
>
> 意味が分かりません。

ブラウザ表示だと気がつきませんでしたが、
「ダブルクォーテーションで括られている、あるいはシングルクォーテーションで括られている」
場合のことですね。

補足のみですみません。解決策は識者にバトンタッチします。
引用返信 編集キー/
■102396 / inTopicNo.4)  Re[1]: 正規表現に関する質問
□投稿者/ HattariB (80回)-(2023/09/19(Tue) 20:09:03)
No102362 (あぷ さん) に返信
> まとめたい場合にはどのようにしたら良いですか?
正規表現だけじゃできないよ。elseに相当するルールが無いもん。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -