本文へスキップ
BecomeCoder

正規表現コース · 第4章 位置とまとまり · レッスン11

単語境界 ― \b で「単語のきわ」を捉える

ブラウザで完結

導入

cat という単語だけを探したいのに、categoryconcatenate の一部までヒットしてしまう」――これを防ぐのが 単語境界 \b です。単語(\w の連なり)とそれ以外の 境目 にマッチする、幅のないアンカーです。

説明

\b は「単語文字(\w)と非単語文字の境界」を表します。

パターン: cat        対象: The cat in category  → cat と cat(egory) の両方にヒット
パターン: \bcat\b    対象: The cat in category  → 独立した "cat" だけにヒット

\bcat\b は「前後が単語の区切りになっている cat」=独立した単語の cat だけを捕まえます。特定の語だけを検索・置換したいときに欠かせません。

パターン: \b\d{3}\b   対象: 12 345 6789   → "345" にマッチ(前後が区切られた3桁の数だけ)

\B はその逆で「単語境界 ではない 位置」を表します。使う機会は少なめですが、\b の対と覚えておきましょう。

やってみよう

\b は「単語のきわ」。語をまるごとで探したいときは \bword\b のように両側を囲む、と覚えておくと検索・置換の精度が上がります。

実際に動かしてみよう

パターン欄に正規表現を、下の「テスト文字列」欄に対象の文字列を入れると、マッチした部分がその場でハイライトされます(ブラウザ標準の正規表現エンジンで動きます)。フラグ(g/i/m/s)を切り替えたり、本文のパターンを書き換えたりして、マッチの変化を確かめながら進めましょう。

正規表現 — その場でマッチを確認

ブラウザ標準の正規表現エンジンでパターンを試せる学習用ウィジェットを読み込みます(外部エンジン不要・軽量です)。
スクロールして表示された時点でも自動で読み込まれます。