N2-Works
WEB企画・制作/システム開発 大阪拠点

Rails4の正規表現で全角半角スペースをマッチさせる

正規表現でホワイトスペースをマッチさせる時は、大方の場合”\s”を使用します。

全角スペースも一致させたい場合は、”[\s| ]”とか書きますよね。

そんな時に便利な書き方がrubyでは用意されています。

それでは全角と半角のスペースを混在する文字列から削除してみます。

[1] pry(main)> hoge = " 全角と  半角の スペースが混在 "
=> " 全角と  半角の スペースが混在 "
[2] pry(main)> hoge.gsub(/[\s| ]+/, '')
=> "全角と半角のスペースが混在"
[3] pry(main)> hoge.gsub(/[[:blank:]]+/, '')
=> "全角と半角のスペースが混在"

2行目は通常の正規表現で削除、3行目はPOSIX文字クラスを使用して削除しました。

”[[:blank:]]”はスペースとタブを削除してくれます。

POSIX文字クラスは他にもありますので、代替で使用できる場合はこちらの方が表記がシンプルになるのでいいかなと思います。

ruby2.3.0 リファレンス 正規表現

[ruby on rails]2016年10月11日 01時00分00秒

※1000文字以内で入力してください

captcha
TOP