入力にこれらの文字だけが含まれていることを確認したい場合は、正規表現を使用してこれを行うことができます。これは、次のように行うことができます。
if (lowercase.match(/[abcdef]*/) == lowercase) {
//Just contains allowed Characters
}
else {
//contains forbidden characters
}
許可されている文字があるかどうかを検索する場合は、次のようにします。
if (lowercase.search(/.*[abcdef].*/) != -1) {
//Contains at least one allowed character
}
else {
//contains none of them
}
編集
これは、常に を使用することがわかっている場合は問題なく動作しますが、 に変更する[abcdef]
と突然機能しなくなります。より汎用的にするには、正規表現を別の方法で作成します。最初のものについては、次のようにします。allowedcharacters
["u", "v", "w", "x", "y", "z"]
if (lowercase.match(RegExp("[" + allowedcharacters.join("") + "]*")) == lowercase) {
// ...
そして、2番目のものは似ています:
if (lowercase.search(RegExp(".*[" + allowedcharacters.join("") + "].*")) != -1) {
// ...
join
このように、指定されたように配列を ing すると、すべての変数がスペースやコンマなしでまとめられるため、使用できる文字は何でもかまいません。
EDIT
ここに実行例があります: http://jsfiddle.net/Florian_Loch/YR8pw/