文字列の前後の空白を削除する
stripで文字列の前後の空白を削除しようとしたら、全角スペースが削除されなかった。
そこで、メソッドを自作することにした。
class String # 文字列前後の全角・半角スペースを削除 def strip_with_full_size_space! self.gsub!(/^[ \s]*(.*?)[ \s]*$/, '\1') end # 文字列前後の全角・半角スペースを削除した文字列を返す def strip_with_full_size_space clone.strip_with_full_size_space! end end
これで、全角・半角スペースにはもちろん、タブにも対応できた。
参考:
Ruby【全角空白も除去】できるstrip!()ありますか? s = " 全.. - 人力検索はてな
rubyで行頭や行末の全角スペースを除去する方法 - memo.yomukaku.net
正規表現の構文