
content="text/html; charset=shift-jis"のページを読み込んで、文字列の置換がしたいです。
#!/opt/local/bin/ruby
require 'uri'
require 'open-uri'
url='http://hoge.hoge'
open(url,'r:shift_jis'){|io|
content = io.read
content.gsub!(/ほげ/,'ホゲホゲ)
print content
}
上記の様に書いてみました。ソースコード自体はUTF-8で記述しました。
実行すると、
`gsub!': incompatible encoding regexp match (UTF-8 regexp with Shift_JIS string) (Encoding::CompatibilityError)
となってしまいます。
どうしたらよいのでしょうか?
rubyのバージョンは
ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin12]
です。
以上、よろしくご指導のほど、お願い申し上げます。
No.1ベストアンサー
- 回答日時:
こんにちは
> `gsub!': incompatible encoding regexp match (UTF-8 regexp with Shift_JIS string) (Encoding::CompatibilityError)
contentの文字はShift_JISなのに、gsubの引数はUTF-8なので一致していないというエラーです。なので、一致させてあげましょう。
content = io.read.encode('utf-8') # contentの文字エンコードをUTF-8に変換
siffon9さん、ありがとうございました。
おかげさまでできました。
置換の後に出力結果はShift_JISのままにしたかったので、gsub!した後に、content.encode('Shift_JIS')で元に戻しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- PHP Content-Typeが機能していない? 2 2022/07/17 11:10
- Ruby 教えてください 2 2023/01/04 17:50
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- その他(プログラミング・Web制作) python 気象データの取得 2 2023/06/20 23:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
1、Rstudioで回帰直線を求める...
-
ruby loopメソッド 変数(再喝)
-
パソコンのスクリーンセーバー...
-
ルビー言語 csvファイル 続き
-
Ruby require ライブラリー
-
Ruby newメソッド
-
英数字を含む文字列(0-9,A-Z)...
-
ruby ensure句
-
C言語の入力した文字を反転させ...
-
(再質問)エクセルのマクロボ...
-
ruby OpenURI::Meta
-
ruby while式
-
ruby raise句
-
ルビー言語 csvファイル 続き(...
-
WIN11にオフイスを複数入れるこ...
-
pythonエラー
-
ルビー言語 ライブラリー 追記
-
WinSCPで画像のように puttyを...
-
プログラミングについてです。...
-
初心者 パイソンプログラム
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
小文字wと大文字Wの区別
-
Ruby expect 条件文(if文)の書き方
-
プログラミング言語で大文字と...
-
【Ruby】shift-jisのページの置換
-
ドメインの申請について
-
ruby の File.exist? メソッド...
-
Ruby の記号 $? の意味を教えて
-
ruby on railsの シンタックス...
-
encode指定の表記について(Rub...
-
Shift_JISについて
-
VLOOKUP関数について
-
フォルダー名の大文字小文字
-
Filterで大文字、小文字の区別
-
COBOLのIFの入れ子について
-
Ruby interpreter (CUI) 2.2.3 ...
-
web上のhtmlファイルから文字デ...
-
RubyでNo such file or directo...
-
バーコードのチェックデジット...
-
VB.NETの入門書、どれをお使い...
-
We're sorry, but something we...
おすすめ情報