解決策
HTMLを覗いていると時々出会う " や & などの "&~~~;" は特殊文字と呼ばれるもの。
HTMLから情報を取得する際は下記のように置き換えよう。
# 出現頻度が高い文字
# ダブルクォーテーションを変換
.gsub('"', '"')
.gsub('"', '"')
# アポストロフィを変換
.gsub(''', "'")
.gsub(''', "'")
# アンパサンド(アンド)を変換
.gsub('&', '&')
.gsub('&', '&')
特殊文字とは
HTMLで " < " や " " " などを文字列として表したいときに使う方法
「文字実体参照」と「数値文字参照」の2種類の表示方法がある
代表的なものは以下
| 文字 | 文字実体参照 | 数値文字参照 | 説明 |
|---|---|---|---|
| < | < |
< |
不等号(小なり) |
| > | > |
> |
不等号(大なり) |
| & | & |
& |
アンパサンド(アンド) |
| " | " |
" |
ダブルクォーテーション(二重引用符) |
| ' | ' |
' |
シングルクォーテーション(引用符)、アポストロフィ |
| / | / |
/ |
スラッシュ |
| % | % |
% |
パーセント |
実際に使ってみると
<p> 例文だよ </p>
<p> 例文2だよ </p>
例文だよ
<p> 例文2だよ </p>参考