PowertBuilderのデータウィンドウからSQLを抽出する正規表現

火曜日 , 22, 1月 2019 Leave a comment

PowerBuilderのソースファイル(.SRDファイル)からSQLを抽出するための正規表現です。

試した範囲ではデータソースとして設定されているSQL、PBSELECT(PowerBuilder独自のSQL)ともに抽出できています。
SQLの場合は、複数行にわたるSQLやダブルクォートで囲まれていても抽出ができることを確認しています。

retrieve=(\”[\s\S]*?^(\~\”)?\”|\”\s{0,}PBSELECT.*\”)

retrieve=(\”[\s\S]*?(^(\~\”)?|[\s\w;])\”|\”\s{0,}(?!PBSELECT\s{0,})[\s\S]*?\”|\”\s{0,}PBSELECT.*\”)

※2019/01/22 12:30 抽出できないケースがあることが判明したので、正規表現を修正しました。

PowerBuilderライブラリファイル(.PBLファイル)から.SRD形式のソースファイルの作り方については、『PowerBuilderのソースファイルをテキスト形式で一括エクスポートするツール』をご覧ください。