CSVファイルから、"
フィールド,
エンクロージャーとして、フィールドセパレーターとして文字列を含む行があります。時々"
、フィールドの囲いを壊すデータがあります。これらを削除するための正規表現を探してい"
ます。
私の文字列は次のようになります。
my $csv = qq~"123456","024003","Stuff","","28" stuff with more stuff","2"," 1.99 ","",""~;
私はこれを見ましたが、引用符だけを削除するように指示する方法がわかりません
- 文字列の先頭ではありません
- 文字列の最後ではありません
- 前にない
,
- が続かない
,
このコード行で、3と4を同時に削除するように指示しました。
$csv =~ s/(?<!,)"(?!,)//g;
ただし、先読みと後読みの両方がとして記述されるのが好きではないため、^
とをそこに収めることはできません。$
(?<!(^|,))
文字列を分割して各要素から引用符を削除する以外に、正規表現だけでこれを実現する方法はありますか?