<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Yes, the /g flag is confusing, because the regular expression kind of turns into an iterator. I’d much prefer an actual iterator-based API that doesn’t mutate the regular expression.<div><br><div><div>On Jul 16, 2014, at 9:26 , Alex Vincent <<a href="mailto:ajvincent@gmail.com">ajvincent@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><div>r = /\u0020+$/g; p = r.exec("  "); q = r.exec("  "); JSON.stringify([p, q])<br>// "[[\"  \"],null]"<br><br></div>Why does calling exec the second time generate null?  When I try the regular expression without the /g flag, I get:<br>
// "[[\"  \"],[\"  \"]]"<br><br><br clear="all"><div><br>-- <br>"The first step in confirming there is a bug in someone else's work is confirming there are no bugs in your own."<br>
-- Alexander J. Vincent, June 30, 2001
</div></div>
_______________________________________________<br>es-discuss mailing list<br><a href="mailto:es-discuss@mozilla.org">es-discuss@mozilla.org</a><br>https://mail.mozilla.org/listinfo/es-discuss<br></blockquote></div><br><div apple-content-edited="true">
<div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">-- <br>Dr. Axel Rauschmayer<br><a href="mailto:axel@rauschma.de">axel@rauschma.de</a><br>rauschma.de<br></div><br></div></div><br class="Apple-interchange-newline">
</div>
<br></div></body></html>