Ruby on Railsで文字列からhtmlタグを除去する方法
Ruby on Railsでアプリケーションを作成した際に、ユーザーに入力させた文字列などからhtmlタグを除去する際に使えるsanitizeメソッドについて紹介します。
Rubyのsanitizeメソッドとは?
Rubyのsanitizeメソッドは、与えられた文字列からタグと属性を除去してくれるメソッドです。
タグを除去してくれると言っても、一概に除去するのではなく除去しないタグ、除去するタグをオプションで指定することができます。
sanitize(文字列[,tags => "許可するタグ名", attributes => "許可しないタグ名"])
tags:許可するタグ名を記載
attributes:許可しないタグ名を記載
上記のような使い方となります。
例えば、Ruby on Railsでユーザー投稿型のアプリケーションや、ブログのようなアプリケーションを作成した際、Viewで表示させる場合にHTMLタグを除去したい場合などに使えます。