目次

半角スペースのみを判定する正規表現

私のイメージとしては、以下のような正規表現になります。

試しに、いくつか文字列を用意してチェックしてみます。

$word_list = ['', ' ', '  ', '   ', ' a', 'a ', ' a ', 'a a'];

foreach ($word_list as $word) {
    if (preg_match('/^[\s]+$/', $word)) {
        echo sprintf('only space [%s]', $word) . PHP_EOL;
    } else {
        echo sprintf('not only space [%s]', $word) . PHP_EOL;
    }
}

正規表現の実行結果

実行結果は以下の通り。うまくいってる気がしますが、穴があったりして・・・。

not only space []
only space [ ]
only space [  ]
only space [   ]
not only space [ a]
not only space [a ]
not only space [ a ]
not only space [a a]

そもそも、半角スペースのみを判定する機会って私の経験ではあまりなく、半角スペースが混在しているとか、trim() で余分な半角スペースを除去するとか、いっそのこと str_replace() でスペースを除去しちゃうとか、状況によって求められるチェックケースも多種多様です。

シンプルな正規表現は自分の備忘録としても、どこかにまとめておけるといいかもしれませんね。

Tips記事一覧

新着記事一覧です。

関連記事一覧

「PHPで半角スペースのみで構成された文字列を判定する正規表現」に関連した記事一覧です。

TOP