2020年2月1日土曜日

CSVにおける括弧の中のカンマ

ことの始まり

CSVの中のStringに,(カンマ)が含まれているが""でくくられていなくて、{}で囲まれている場合で、その{}内のカンマだけを置換したいとときに正規表現でかくとしたらどうなりますか?と聞かれまして、やりかたを探しました。

Stringの例

aaa,bbb,{ccc,ccc,ccc,,,},ddd

正規表現

(?:{|\G(?!^))[^,}]*\K,

感想

アンカー問題だということはわかったのですが、結局自分で考えるより、stackoverflowを探した方が早かったです。
検索ワードはこちら
regex all commas between brackets