[PR]今日のニュースは
「Infoseek モバイル」


正規表現パズル

 サイト設立 2006年8月3日
  最終更新日 2008年7月3日


このサイトは、Jeffrey E. F. Friedl氏の著書[詳説 正規表現]の内容をふまえて
正規表現パズルを解くサイトです
EmEditorの正規表現が対象です


1 基礎編

1-1 キルヒホッフの実証論
1-2 ブール代数
1-3 正則表現
1-4 ふくろう本
1-5 EmEditorの正規表現


2 基本編

2-1 指定文字列を含む行を検索
2-2 指定文字列を含まない行を検索
2-3 整数をカンマ区切りに置換
2-4 URLの/を補完
2-5 フルパスからディレクトリパスを取得(置換編)
2-6 フルパスからディレクトリパスを取得(検索編)
2-7 フルパスからファイル名を取得(置換編)
2-8 フルパスからファイル名を取得(検索編)
2-9 指定した拡張子以外のファイルを取得
2-10 行頭と行末のダブルコートを補完
2-11 指定文字の指定番目の間の文字列を取得
2-12 指定文字を挿入
2-13 文字列を含む含まないでの分岐を模倣
2-14 指定文字の指定番目までの文字列を検索
2-15 三銃士を検索
2-16 量指定子でn回以下を指定
2-17 指定位置に文字を挿入
2-18 文字数を条件とした置換
2-19 文字数に応じた指定文字を置換
2-20 最後の指定文字から検索
2-21 /で囲まれた最後の文字列を検索
2-22 文字列ABCで囲まれた最後の文字列を検索
2-23 文字列が2個以上ある行を検索
2-24 行頭から文字がN回現れるまでマッチ
2-25 行頭から文字列がN回現れるまでマッチ
2-26 指定複数文字列のみの行を検索(共通文字なし)
2-27 指定複数文字列のみでない行を検索(共通文字なし)
2-28 指定複数文字列のみの行を検索(共通文字あり)その1
2-29 指定複数文字列のみの行を検索(共通文字あり)その2
2-30 指定複数文字列のみの行を検索(共通文字あり)その3
2-31 指定複数文字列のみでない行を検索(共通文字あり)
2-32 共通文字に注目した正規表現の変形
2-33 月と日の前ゼロを補完
2-34 連続文字5文字ごとにマッチ
2-35 次に文字列ABCがある、文字X以外を検索
2-36 小数第4位以下と小数第3位の0を消去
2-37 2個以上連続するAの、最後のA以外を検索
2-38 {0,1}と選択での分配法則


3 応用編

3-1 同じ文字を検索
3-2 整数にマッチ
3-3 数値にマッチその1
3-4 数値にマッチその2
3-5 IPの前ゼロを消去
3-6 IP(0以上255以下の整数)を検索
3-7 最後の括弧の中身を取得(置換編)
3-8 最後の括弧の中身を取得(検索編)
3-9 最初の括弧の中身を取得
3-10 全ての括弧の中身を取得
3-11 任意の連続した文字列を検索
3-12 範囲コメントでない部分を検索
3-13 行コメントでない部分を検索
3-14 カンマ区切りの金額を検索
3-15 演算子の前後の空白をチェック
3-16 指定文字がn回
3-17 指定文字がn回以外
3-18 指定文字列がn回
3-19 指定文字列がn回以外
3-20 否定先読みで条件チェック
3-21 可変長の戻り読みを模倣
3-22 選択での優先順位の変更
3-23 条件を満たすファイル名と、部分マッチ
3-24 指定文字列内の、指定文字を検索その1
3-25 指定文字列内の、指定文字を検索その2
3-26 指定文字列内の、指定文字を検索その3
3-27 文字クラスの集合演算を模倣その1
3-28 文字クラスの集合演算を模倣その2
3-29 文字クラスの集合演算を模倣その3
3-30 文字クラスと量指定子と否定戻り読み


4 発展編

4-1 数値が4の倍数か調べる
4-2 empテーブルに対するdelete文を検索
4-3 日付を検索
4-4 指定文字がn回以上m回以下
4-5 複数文字がn回以上m回以下
4-6 最小マッチ(ものぐさマッチ)を模倣
4-7 よくばりマッチ(強欲マッチ)を模倣
4-8 指定文字列がn回以上m回以下
4-9 複数文字列がn回以上m回以下
4-10 aが偶数個でbが奇数個の文字列
4-11 指定文字列がn回以上m回以下(重複を許可)
4-12 指定文字列が3の倍数回出現
4-13 文字列を含む含まないでの論理演算
4-14 ブール代数の分配法則
4-15 アトミックなグループを模倣
4-16 文字列データを検索(VBのエスケープ方式)
4-17 文字列データでないカンマを検索(VBのエスケープ方式)
4-18 文字列データのカンマを検索(VBのエスケープ方式)
4-19 文字列データを検索(Cのエスケープ方式)
4-20 文字列データでないカンマを検索(Cのエスケープ方式)
4-21 文字列データのカンマを検索(Cのエスケープ方式)
4-22 ブール代数のドモルガンの法則その1
4-23 ブール代数のドモルガンの法則その2
4-24 少なくとも二つを含む行を検索
4-25 少なくとも一つを含む行を検索
4-26 HTMLのタグ内部を検索
4-27 HTMLのタグ外部を検索
4-28 直近のtrタグで囲まれた部分を検索
4-29 CSVのn番目のデータ区切りまでマッチその1
4-30 CSVのn番目のデータ区切りまでマッチその2
4-31 行末から左に数えて3番目のabcを検索
4-32 ABCのみの文字列で、それぞれ1回のみ出現する文字列


5 難問編

5-1 特殊なCSVのデータを検索(VBのエスケープ方式)
5-2 行末からペアを作成
5-3 最も内側の括弧の中身を検索
5-4 文字列のチェックその1
5-5 文字列のチェックその2
5-6 文字列のチェックその3
5-7 括弧でくくられてないカンマを検索
5-8 行単位での整形その1
5-9 行単位での整形その2
5-10 文字列の出現回数と出現順序を指定
5-11 項目数が3つの行を検索
5-12 コメント扱いでない文字を検索
5-13 文字列のチェックその4
5-14 同じ文字で、文字が挟まれてない行を検索
5-15 2文字以上の文字列で、文字が挟まれてない行を検索
5-16 Bが続くAが1個で、Bが続かないAが1個
5-17 スラッシュの前の最初の数字列以外を消去
5-18 優先順位を持った置換
5-19 否定戻り読みでドモルガンの法則
5-20 正規表現でブール代数の公式


6 連続した置換編

6-1 連続した重複行を1行に置換
6-2 出現回数が2回目以降なら削除その1
6-3 出現回数が2回目以降なら削除その2
6-4 Aに挟まれたXをYに置換
6-5 IPアドレスの左に0埋め


正規表現の豆知識

JavaとVB.netとOracleでの正規表現の使用例
否定先読みと任意の組み合わせでの盲点


姉妹サイト

OracleSQLパズル
MySQLパズル
PostgreSQLパズル
DB2 SQLパズル
ブール代数パズル


正規表現関連のリンク

Perl正規表現雑技
Perlの正規表現のチュートリアル
正規表現メモ
Regular-Expressions.info(英語)
Regular Expression Matching Can Be Simple And Fast(英語)
正規表現オートマトン(英語)
正規表現探索の手法
Javaの正規表現を確認するwebツール
RegexDesigner.NETを使って.NETでの正規表現をマスターする
正規表現の備忘録(PDF)(英語)
正規表現(regular expression)入門
正規表現とNFA・DFA
正規表現講座 - Ukiwiki
正規表現の作業効率(英語)
MSDN Forums Home : Regular Expressions(英語)
RegexAdvice - Forums(英語)
Flagrant Badassery(英語)
ふくろう本関連はこちら