私はこのような何かやろうとしているので、単一の文字ができ、他の文字セットと一致するかどうかを確認したい:それは動作しませんので、charをregexpと比較することはできますか?
str.charAt(0) == /[\[\]\.,-\/#!$%\^&\*;:{}=\-_`~()]/
はそれを行うための正しい方法はありますか?
私はこのような何かやろうとしているので、単一の文字ができ、他の文字セットと一致するかどうかを確認したい:それは動作しませんので、charをregexpと比較することはできますか?
str.charAt(0) == /[\[\]\.,-\/#!$%\^&\*;:{}=\-_`~()]/
はそれを行うための正しい方法はありますか?
使用test
/[\[\]\.,-\/#!$%\^&\*;:{}=\-_`~()]/.test(str.charAt(0))
はい、使用:
if(str.charAt(0).match(/[\[\]\.,-\/#!$%\^&\*;:{}=\-_`~()]/))
charAt
がちょうど1文字の長い文字列を返す、あなたが正規表現にマッチさせることで、通常の文字列関数を使用することができますので、何char
タイプは、JavaScriptではありません。
あなたは範囲を使用していない限り実行可能である別のオプション、:
var chars = "[].,-/#!$%^&*;:{}=-_`~()";
var str = '.abc';
var c = str.charAt(0);
var found = chars.indexOf(c) > 1;
別のオプションは、内の文字を保っています配列(たとえば、chars.split('')
を使用)を検索し、その文字がそこにあるかどうかをチェックします。
How do I check if an array includes an object in JavaScript?