• ベストアンサー

全角文字を半角にすると全角の”と’が変換されない理由と対策を!?

String.prototype.toAscii = function(){ return this.replace(/([!-~ ])/g, function (char){return String.fromCharCode(char.charCodeAt(0) - 65248)} ); } タイトル通りです。全角の「”」と「’」が半角文字に変換されません。 その理由と対策を教えていただけますか? それと、根本的にこんなやりかたは、だめなのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

対策: 知らん。 #元々僕はそういう変換噛ます事に抵抗感ある人間なのでできることならやらないでほしいと思っている 原因: http://en.wikipedia.org/wiki/Halfwidth_and_Fullwidth_Forms "はU+FF02 FULLWIDTH QUOTATION MARK ”はU+201D RIGHT DOUBLE QUOTATION MARK

noname#84373
質問者

お礼

コード表をよく見ろ!ってことですね^^; てっきり順番どおりになっているものばかりだと思ってました;_; replaceを二回かけてごまかすことにします。

その他の回答 (1)

  • garaogu
  • ベストアンサー率40% (67/166)
回答No.2

正規表現範囲から外れているコードだからじゃないでしょうか?

noname#84373
質問者

補足

外れてますね^^; 解決しました。 分かってみれば・・・です。ぁ~・・。;_;

関連するQ&A