- ベストアンサー
JavaScriptのテキストボックスの入力チェックについて
- JavaScriptのテキストボックスに入力した文字列のチェックについて質問します。
- 具体的には、半角英字のa-eで構成される5文字の文字列かどうかをチェックしたいです。
- 正規表現を使用して上記の条件を満たしているかどうかを判定することができます。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
かんけつに。 alert( "adecb".split('').sort().join('') == 'abcde');
その他の回答 (3)
- babu_baboo
- ベストアンサー率51% (268/525)
ついき。 ぜんかくくうはくは、はんかくにしてちょ。
- babu_baboo
- ベストアンサー率51% (268/525)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <title>TEST</title> <body> <form action="#"> <p> <input type="text" id="abcde"> <input type="button" value="check" onclick="check()"> </p> </form> <script type="text/javascript"><!-- var getTotalHitNumber = (function ( puller ) { return function ( ary ) { var result = [ ]; var counter = 0; (function ( ary, buf ) { var len = ary.length, i, c, d; if( 1 == len ) result[ buf.join('') + ary[0] ] = counter++; else { for( i = 0; i < len; i++ ) { c = puller( ary, i ); d = buf.slice(0); d.push( c.value ); arguments.callee( c.array, d ); } } })( ary, [ ] ); return result; }; })( function ( a, n ) { for( var r = [ ], i = 0, I = a.length; i < I; i++ ) i == n || r.push( a[ i ] ); return { value: a[ n ], array: r }; }); var hashList = getTotalHitNumber( ['a','b','c','d','e'] ); var check = function ( ) { var v = document.getElementById( 'abcde' ).value, mess; if( v.split('').sort().join('') == 'abcde' ) mess = "その番号は、" + hashList[ v ] + "番です"; else mess = "その番号は、間違いです"; alert( mess ); }; //--> </script> aからeまでのならびをつくり、ばんごうふってます ぷろぐらむてきには、「再帰」をけんさく。 じぶんでも、いまいちよくわかりませんね。 なんたって、かいとうにりようされるばめんがすくないし、 それをりようして、コードをかいてくれるひとが、ひじょうにすくない! なので、かきかたもこれでよいのかわからないです
- okwave0
- ベストアンサー率0% (0/2)
正規表現は使わなくても検査できます.以下の関数は条件を満たしていれば1を返します. function f(s){ if(s.length!=5)return; for(var c,i=0,t={a:1,b:1,c:1,d:1,e:1};c=s.charAt(i++);) if(t[c])t[c]=0; else return; return 1}
お礼
回答していただき、ありがとうございます。 お礼がおくれてしまい、もうしわけありません。 コードを記述していただき参考になります。 貴重な時間をさいての回答、ありがとうございました。
お礼
回答していただき、ありがとうございます。 お礼が遅れてしまい、もうしわけありません。 貴重な時間をさいての回答、ありがとうございました。