WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:JavaScriptでひらがな比較

みそっち [WriteDate : Tue May 15 21:52:42 2001]

ちょっと質問なのですが、JavaScriptでテキストに入力された文字が
ひらがなかどうかを判断したいと思い、以下のように作ってみました。
果たしてこの方法は使用して大丈夫なのでしょうか?
C言語ではできるみたいなのですが・・・。
どなたか同じ方法をやったことがある方見えましたらレスお願いします。

function check_all(){
    if(('ぁ' <= document.myForm.strHiragana_sei.value) && (document.myForm.strHiragana_sei.value <= 'ん')){
        alert("ひらがなだよ");

    }else{
        alert("ちがうちがう");
    }

}

見にくいかもしれません。すみません。


Nobu3 [URL] [WriteDate : Wed May 16 00:20:17 2001]

試したの?


きだっち [WriteDate : Wed May 16 09:07:36 2001]

試したところ一応比較できてるみたいです。
すべての文字をテストしたわけではないのですが。
ただこういったやり方を見たことも聞いたこともないので
ありえる方法なのか知りたくて・・・。


Nobu3 [URL] [WriteDate : Wed May 16 09:51:10 2001]

「あ漢字」が「ひらがな」になります。(Win98+IE5.5,NN4.04,NN6)

仕様はわかりませんが、「とほほのWWW入門」の「比較演算子」の解説では「文字列の場合は辞書順の前後比較を行う。」とあります。
http://tohoho.wakusei.ne.jp/wwwjsope.htm#Comparison

もし「1文字」で比較するなら、2バイト文字を2文字と解釈するブラウザへの配慮も必要でしょう。


ween [WriteDate : Wed May 16 14:37:43 2001]

ECMA-262 第3版仕様では、53-54ページ、11.8.5 The Abstract Relational Comparison Algorithm
あたりで触れられています。
http://www.ecma.ch/ecma1/stand/ecma-262.htm

PDF のため直接リンクをはれないのですが、こんな一節があります。

> The comparison of strings uses a simple lexicographic ordering on sequences of code point value values.

というわけで「辞書順の前後比較」で仕様的に正しいようです。


みそっち [WriteDate : Thu May 17 14:25:33 2001]

皆さんお返事ありがとうございます。
どうやらこの方法でいけそうな感じです。
一応テストもしてみましたが今のところ正常に処理してくれました。
1文字比較も、最初に「あ.length」をとることでどのブラウザにも
対応できるようにしました。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]
ChaichanPAPA's World