更新1:Notepad++ で動かなかったので修正しました。 更新2:001 のような 0 埋めの数字が ' で囲まれない問題を修正しました
Excel のマクロで作っていたのですが、遅かったため正規表現を使って再現してみました。
区切り文字:, 引用符:" の想定で。
' をエスケープ
パターン:
'
置き換え後:
''文字列を ' で囲む
パターン:
(?:^|(?<=,))(?!(?:NULL|0|(?:0\.|[1-9])[0-9\.]*)(?:(?=,)|$))(?:"(.*?(?<!\\))"|([^,"\r\n]*))(?:(?=,)|$)
置き換え後:
'\1\2'INSERT 句を付ける
パターン:
^
置き換え後:
INSERT INTO 【テーブル名】 VALUES (後ろのカッコとデリミタ ; を付ける
パターン:
$
置き換え後:
);※SQL Server の場合は適度に GO を入れましょう。
CSV の , はそのまま生かす形になりました。業務で日常的に使ってはいますが、テストが不十分なので動作は保証したくないです。