最近書いた再帰を使った正規表現を可視化しようと思ってGoogle検索してみたのですが、上位に出てくるサイトでも日本語が使えなかったりサポートしている正規表現にPCREの範囲(というか再帰)が含まれていなかったりいろいろでした
いくつか正規表現の可視化サイトを試したので簡単に表にしました
google: regex visualizer の検索結果上位3件を試したメモ
サイト | 日本語対応 | 正規表現の範囲 | 画像ダウンロード | その他 |
---|---|---|---|---|
Regexper | ◯ | 再帰はダメだった | SVG, PNG | Generated images licensed: CC BY 3.0と書いてあるので、生成した画像のライセンスが縛られているかも(?) |
Debuggex: Online visual regex tester. JavaScript, Python, and PCRE. | △微妙に文字幅の計算がおかしいのか文字がはみ出たりする | JavaScript, Python, PCRE | なし | サイトを開くまでが重い |
Regulex:JavaScript Regular Expression Visualizer | × | 再帰はダメだった | PNG |
可視化してみる
というわけで以前書いた記事で使った正規表現をてきとうに選んで可視化してみました
sucrose.hatenablog.com
以下のサイトを使いました
Debuggex: Online visual regex tester. JavaScript, Python, and PCRE.
([0369]|[147](?1)*[147](?1)*[147]|[147](?1)*[258]|[258](?1)*[147]|[258](?1)*[258](?1)*[258])+
を可視化すると以下のようになりました
四角形の中に1が書かれたものが再帰を表しているようなのですがわかりづらいですね(再帰をどう可視化すべきなのかってよくわからないですが)