仕事で使った正規表現メモ。いずれもサクラエディタで処理しています。もっと効率の良い方法などもあるかもしれませんが、とりあえず客先に提出する大量データの変換を期限内に行うことを優先しているので「動けばOK」というものになっています。参考にされる場合はその辺ご了承くださいね。
- 作者:Jeffrey E.F. Friedl
- 出版社/メーカー: オライリージャパン
- 発売日: 2008/04/26
- メディア: 大型本
XMLタグに挟まれたピリオド区切りの時刻をコロン区切りにかえる
XMLデータに含まれるピリオド区切りの時刻「12.34.56」のようなものを「12:34:56」に変更するのに使いました。
変換元対象パターン >([0-9][0-9])\.([0-9][0-9])\.([0-9][0-9])< 変換先 >$1:$2:$3<
SQL文の行末コメントをインライン形式に変換する
SQLではハイフン2個を連ねるとその後ろがコメント文になりますが、これを「/ コメント /」のようなスラッシュ+アスタリスクのコメントに置き換えます。どこで利用したかというと、テキストファイルに記述されたSQL文をVBAで取り込んで、1行の文字列としてADODBのライブラリで処理した際に、行末コメントがエラーの元になってしまうのを回避するために使いました。
変換対象パターン --(.*)$ 変換先 /* $1 */
変換対象は先頭に空白入れてますがそのへんは適宜調整してください。
SQLの行頭に空白を入れる
改行を多数含んだSQL文テキストの行頭がアルファベットかカンマの場合に、行頭に空白を挿入します。これも複数行SQLをVBAなどで取り込んで1行のSQLにした際に、改行を取った瞬間、ステートメント同士がくっついてしまったのを補正するために空白を行頭にいれました。その際の正規表現です。
変換対象パターン ^([,A-Za-z]) 変換先 $1
変換先の冒頭は空白です。空白に続けて、対象パターンでヒットした文字列(パターン中、括弧で囲われた部分に該当する文字列)を$1として当てはめ、リプレースします。
正規表現技術入門 ーー最新エンジン実装と理論的背景【電子書籍】[ 新屋良磨【著】 ]
- ジャンル: 本・雑誌・コミック > PC・システム開発 > その他
- ショップ: 楽天Kobo電子書籍ストア
- 価格: 3,630円
[改訂新版]正規表現ポケットリファレンス【電子書籍】[ 宮前竜也 ]
- ジャンル: 本・雑誌・コミック > PC・システム開発 > プログラミング > PHP
- ショップ: 楽天Kobo電子書籍ストア
- 価格: 2,398円