cad が次のようであるとしましょうfoo
:
// will return false
if (cad.match(new RegExp("[A-Z]"))) {
resultado="mayúsculas";
// so will go there
} else {
// will return true
if (cad.match(new RegExp("[a-z]"))) {
// so will go there
resultado="minúsculas";
} else {
if (cad.match(new RegExp("[a-zA-z]"))) {
resultado = "minúsculas y MAYUSCULAS";
}
}
}
さて、 cad が次のようになるとしましょうFOO
:
// will return true
if (cad.match(new RegExp("[A-Z]"))) {
// so will go there
resultado="mayúsculas";
} else {
if (cad.match(new RegExp("[a-z]"))) {
resultado="minúsculas";
} else {
if (cad.match(new RegExp("[a-zA-z]"))) {
resultado = "minúsculas y MAYUSCULAS";
}
}
}
最後に、 cad はFoO
次のようになります。
// will return true
if (cad.match(new RegExp("[A-Z]"))) {
// so will go there
resultado="mayúsculas";
} else {
if (cad.match(new RegExp("[a-z]"))) {
resultado="minúsculas";
} else {
if(cad.match(new RegExp("[a-zA-z]"))) {
resultado = "minúsculas y MAYUSCULAS";
}
}
}
ご覧のとおり、ネストされたelse
ものは決して訪問されません。
あなたができることは次のとおりです。
if (cad.match(new RegExp("^[A-Z]+$"))) {
resultado="mayúsculas";
} else if (cad.match(new RegExp("^[a-z]+$"))) {
resultado="minúsculas";
} else {
resultado = "minúsculas y MAYUSCULAS";
}
説明:
^
文字列の先頭から、
$
文字列の最後までを意味します。
<anything>+
は、少なくとも 1 つの何かを意味します。
そうは言っても、
^[A-Z]+$
文字列には大文字のみを含める必要があることを意味します。
^[a-z]+$
文字列には小文字のみを含める必要があることを意味します。
したがって、文字列が大文字または小文字のみで構成されていない場合、文字列には両方が含まれます。