2

特殊文字 (ファイルから読み取ったもの) を HTML 形式に解析したいと考えています。例えば

**üö ä€ afd sdf sdfüäää** 

<p>&uuml;&ouml; &auml;&euro; afd sdf sdf&uuml;&auml;&auml;&auml;&nbsp;<br />&nbsp;</p>

私はウェブ上でいくつかの解決策を見つけました:

Rack::Utils.escape_html()

CGI::エスケープ HTML()

ERB::Util.html_escape()

それらのそれぞれは、通常のテキストでうまくやっています:

HI"ksdlfj</?>>>.dsfklsd

<p>HI"ksdlfj&lt;/?&gt;&gt;&gt;.dsfklsd</p>

しかし、入力テキストにこれらの特殊文字がある場合、何もしません。

これについて何か助けはありますか?

Rails バージョン: 3.0.5 Ruby: ruby​​ 1.9.3p429

ありがとう、チャンダン

4

2 に答える 2

1

あなたはhtmlentitiesを使うことができます

require 'htmlentities'
str = "üö ä€ afd sdf sdfüäää"
HTMLEntities.new.encode(str, :named)

#=> "&uuml;&ouml; &auml;&euro; afd sdf sdf&uuml;&auml;&auml;&auml;"
于 2014-07-26T09:28:05.447 に答える
0

私は最終的にそれをしました:

while str.gsub!(/[^0-9A-Za-z]/, ''); end

しかし、必要なのは 0-9 と az だけだったからです。お役に立てれば!

于 2015-02-05T14:00:57.313 に答える