正規表現 テスト ブラウザで確認
パターンを貼り付け、実際のテキストに対して一致を確認してからバリデーションやパーサーに使えます。
//
一致情報0 matches
テスト文字列
文字数: 73
一致ハイライト
.任意の1文字
\d数字
\w単語文字
^/$先頭 / 末尾
検証済みパターンを小さなツールにする
バリデーター、パーサー、社内ヘルパーに正規表現を使うなら、DeployPagesで静的ツールとして公開し、チームが同じバージョンを使えるようにできます。
ツールサイトを公開オンライン正規表現テスターを使う理由
正規表現の不具合は細部に潜みます。アンカーの抜け、貪欲な量指定子、フラグの指定漏れ、実データと違うサンプルなどです。ライブテスターならパターン、フラグ、一致、テスト文字列を同時に見ながら修正できます。
正規表現早見表
文字クラス
| . | 改行以外の任意の1文字 |
| \w | 英数字またはアンダースコア |
| \d | 数字 |
| \s | 空白文字 |
| [abc] | 列挙した文字のいずれか |
| [^abc] | 列挙していない文字 |
量指定子
| * | 0回以上 |
| + | 1回以上 |
| ? | 0回または1回 |
| {n} | ちょうど n 回 |
| {n,} | n 回以上 |
| {n,m} | n から m 回 |
アンカー / 先読み
| ^ | 文字列の先頭 |
| $ | 文字列の末尾 |
| \b | 単語境界 |
| \B | 非単語境界 |
| (?=p) | 肯定先読み |
| (?!p) | 否定先読み |
フラグ
| g | 全体検索 |
| i | 大文字小文字を無視 |
| m | multiline |
| s | ドットを改行にも一致させる |
| u | Unicodeモード |
詳しい FAQ
貪欲マッチと非貪欲マッチの違いは?
貪欲マッチは可能な限り多くのテキストを消費します。非貪欲マッチは量指定子の後に?を付け、最初に成立する一致で止まります。
メールアドレスは正規表現だけで検証できますか?
実用的な一次チェックには使えますが、所有確認にはなりません。必要なら確認手順を別に用意します。
ある言語で動く正規表現が別の言語で失敗するのはなぜですか?
正規表現エンジンごとに対応機能が違います。JavaScript、PCRE、Python、Java、データベースの正規表現では後読み、名前付きグループ、Unicode、エスケープ規則が異なります。
正規表現が性能問題になることはありますか?
あります。入れ子の量指定子や曖昧な選択肢は特定の入力で過剰なバックトラックを起こします。リクエスト検証に使う前に最悪ケースの文字列で試します。