Skip to main content

Is handling of curly braces in javascript regex is the same across all modern browsers?


Curly braces in JavaScript regex is used to denote quantifiers. So writing




a{2,4}



will match aa, aaa and aaaa. But if you mistype this quantifier like this:




x{1,x}



It will match the literal text "x{1,x}", at least in Firefox.



Is this behavior common to modern browsers?



The ECMA standard prohibits this behavior and requires the escaping of the braces.



(Background: I have to write a parser for javascript regexes at work.)


Source: Tips4allCCNA FINAL EXAM

Comments

  1. I don't know for JavaScript and browsers, but this is the behaviour I would have expected and that I have seen in the past in regular expressions.

    So I tested different regex engines on their behaviour:


    C#: behaves this way
    Perl: behaves this way
    Python: behaves this way
    PHP: behaves this way
    Java: throws an Exception

    ReplyDelete

Post a Comment

Popular posts from this blog

Slow Android emulator

I have a 2.67 GHz Celeron processor, 1.21 GB of RAM on a x86 Windows XP Professional machine. My understanding is that the Android emulator should start fairly quickly on such a machine, but for me it does not. I have followed all instructions in setting up the IDE, SDKs, JDKs and such and have had some success in staring the emulator quickly but is very particulary. How can I, if possible, fix this problem?