正規表現で、2桁を表す書き方について
少し強引な書き方になりましたが、"正規表現"で分からない箇所がありますので、
よろしくお願いします。
下記のコードは、平成以降の元号が"元年",もしくは"1桁"の場合は、レッドを表示し、
元号が"2桁"の場合は、グリーンを表示,その他の場合は、ブルーを表示させようと
したものです。
現在は"平成30年"なので、グリーンで表示するかと思っていたら、ブルーで表示されます。
書き方が間違っているのでしょうか。chromeのデベロッパーツールでも、エラーは
でませんが、どのように書けば、グリーンに表示させられるでしょうか。
<SCRIPT type="text/javascript">
<!--
var now=new Date();
var Gengou = now.toLocaleDateString("ja-JP-u-ca-japanese", { era: "long", year:"numeric" })
.replace(/(^|[^\d])1(?=$|[^\d])/, '$1元').replace(/\u200e/g, "").replace(" ", "");
if((Gengou == "元年")&&(Gengou == [2-9])){//元号が"元年",もしくは"1桁"の場合は、レッドを表示。
document.write("<p>");
document.write("<span style='color:red'>");
document.write(Gengou);
document.write("</span>");
document.write("</p>");
}
else if(Gengou == [1-9][0-9]){//元号が"2桁"の場合は、グリーンを表示。
document.write("<p>");
document.write("<span style='color:green'>");
document.write(Gengou);
document.write("</span>");
document.write("</p>");
}
else{//その他の場合は、ブルーを表示。
document.write("<p>");
document.write("<span style='color:blue'>");
document.write(Gengou);
document.write("</span>");
document.write("</p>");
}
//-->
</script>