SQL罰金からコメント行を削除する正規表現を探しています。すべてのコメントは "COMMENT ON" で始まりますが (明らかに)、複数行になる傾向があります。1 行を削除する式を思いつくことができましたが、複数の行に苦労しています。削除しようとしている典型的なエントリは次のようになります。
COMMENT ON TABLE account_heading IS $$
This table holds the account headings in the system. Each account must belong
to a heading, and a heading can belong to another heading. In this way it is
possible to nest accounts for reporting purposes.$$;
したがって、必要なのは、セミコロンが表示されるポイントまで複数の行をたどる正規表現です。
私は、2 行目まで検索し、2 ドル ($$) で停止するこれを思いつきました。昨日正規表現を使い始めたばかりなので、これが完全に間違っている場合はご容赦ください (間違いないと確信しています)。
^COMMENT ([^\n\r]+)[\n\r]([\$;\n\r]+)
MacでGrepオプションを使用してTextWranglerでこれを行っています。
ありがとう!