expected by specs ... try this
r = /\u0020+$/g; p = r.exec(" "); r.lastIndex = 0; q = r.exec(" ");
alert(JSON.stringify([p, q]))
and you are good to go
... without resetting lastIndex, you can also use " ".replace(r,
'whatever') and it's going to work every time.
Have a look at these slides to know more about JS RegExp
https://github.com/WebReflection/talks/tree/master/BerlinJS
On Wed, Jul 16, 2014 at 12:26 AM, Alex Vincent <[email protected]> wrote:
> r = /\u0020+$/g; p = r.exec(" "); q = r.exec(" "); JSON.stringify([p, q])
> // "[[\" \"],null]"
>
> Why does calling exec the second time generate null? When I try the
> regular expression without the /g flag, I get:
> // "[[\" \"],[\" \"]]"
>
>
>
> --
> "The first step in confirming there is a bug in someone else's work is
> confirming there are no bugs in your own."
> -- Alexander J. Vincent, June 30, 2001
>
> _______________________________________________
> es-discuss mailing list
> [email protected]
> https://mail.mozilla.org/listinfo/es-discuss
>
>
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss