正規表現での空白文字は「\s」
正規表現での空白文字は「\s」として表します。そもそも空白文字とは半角スペース、タブ(\t)、改行(\n,\r)、改ページ(\f)をまとめたもので、「\s」とかいた場合にはこれらのいずれかという意味になります。
// ピカチュウと何かしらの空白文字に囲まれている場合にヒットさせたい
(ピカチュウ\s)+ピカチュウ
// 検索対象
ピカチュウ ピカチュウ ピカチュウ // 文字間は半角スペース
ピカチュウ ピカチュウ ピカチュウ // 文字間はタブ
// ヒットする対象
ピカチュウ ピカチュウ ピカチュウ
ピカチュウ ピカチュウ ピカチュウ
上記の例だとピカチュウの後に半角スペース、改行、タブのいずれが続いた場合にもヒットするため、検索対象全体にマッチしています。
空白文字以外は「\S」
正規表現にて空白文字以外は「\S」で表します。空白文字「\s」の反対という意味で大文字の「S」を用いて「\S」と書きます。具体的には半角スペース、タブ(\t)、改行(\n,\r)、改ページ(\f)のいずれにも該当しない文字がマッチします。
// ピカチュウと何かしらの空白文字に囲まれている場合にヒットさせたい
\S+
// 検索対象
ピカチュウ ピカチュウ ピカチュウ // 文字間は半角スペース
ピカチュウ ピカチュウ ピカチュウ // 文字間はタブ
// ヒットする対象
ピカチュウ // 6こそれぞれヒットする
空白文字に全角スペースを含める表現
半角スペースをはじめ多くの見えない文字を表現できる空白文字ですが、全角スペースには対応していません。そこで全角スペースを含めた表現について解説します。
半角スペースと全角スペース
半角スペースと全角スペースの2つを表現するには「[ ]」ないし「( | )」と書きましょう。見えないのでわかりづらいですが「[(半角スペース)(全角スペース)]」「((半角スペース)|(全角スペース))」としてそれぞれスペースを記入しています。
// ピカチュウの後に半角スペースないし全角スペースが続く場合にマッチ
ピカチュウ[ ] // [ ]のなかでは[(半角スペース)(全角スペース)]のように入力している
// 検索対象
ピカチュウ ピカチュウ ピカチュウ // 文字間は半角スペース
ピカチュウ ピカチュウ ピカチュウ // 文字間は全角スペース
ピカチュウ ピカチュウ ピカチュウ // 文字間はタブ
// ヒットする対象
ピカチュウ ピカチュウ
ピカチュウ ピカチュウ
空白文字と全角スペース
空白文字と全角スペースの2つを表現するには「[\s ]」ないし「(\s| )」と書きましょう。見えないのでわかりづらいですが「[\s(全角スペース)]」「(\s|(全角スペース))」としてそれぞれスペースを記入しています。
// ピカチュウの後に半角スペースないし全角スペースが続く場合にマッチ
ピカチュウ[\s ] // [ ]のなかでは[\s(全角スペース)]のように入力している
// 検索対象
ピカチュウ ピカチュウ ピカチュウ // 文字間は半角スペース
ピカチュウ ピカチュウ ピカチュウ // 文字間は全角スペース
ピカチュウ ピカチュウ ピカチュウ // 文字間はタブ
// ヒットする対象
ピカチュウ ピカチュウ ピカチュウ
ピカチュウ ピカチュウ ピカチュウ
ピカチュウ ピカチュウ