技術をかじる猫

適当に気になった技術や言語、思ったこと考えた事など。

正規表現で謎の動き

すごく単純なコードを書いたのだが

str = "4444";
if (str.match(/^¥d{4}$/)) {
    alert("マッチしました。");
}

しかし、Chrome 40.0.2214 で alert が発火せず… 意味が分からないと、「¥d」を「[0-9]」に置き換えると発火する。

意味が分からないが事実は事実としてそうなった。 誰か知ってたら教えて欲しい…。

ちなみにその後調べたら、FireFox/Chrome で ¥d の解釈が違うとかどうとかで、推奨しないというサイトが結構あった。 バットノウハウは ASP.NET (MVC は除く)みたいなレガシーの塊だけでいいよホント…。