Ben Nadel
On User Experience (UX) Design, JavaScript, ColdFusion, Node.js, Life, and Love.
Ben Nadel at the New York ColdFusion User Group (Apr. 2008) with: Clark Valberg and Peter Bell and Rob Gonda and Nafisa Sabu
Ben Nadel at the New York ColdFusion User Group (Apr. 2008) with: Clark Valberg@clarkvalberg ) , Peter Bell@peterbell ) , Rob Gonda@RobGonda ) , and Nafisa Sabu@nafisa13 )

Javascript Regular Expression (RegExp) Multiline Flag Not Universal

By Ben Nadel on

I was debugging some code and I just came accross a very interesting fact: the "m" flag for multiline searches in Regular Expression (RegExp) is not universal. It only works on newer browsers and not all of them for that matter. On this Javascript Site, it states that all searches work for multiline without the flag and that the "m" flag will indeed throw errors in older browsers (as I am finding in my debugging... stupid Mac IE).

So, to drive it home, this is not good:

  • new RegExp("[\\n\\r]+", "gim")

And should be replaced with:

  • new RegExp("[\\n\\r]+", "gi")

Both of these are searching for new line characters and returns across multiple lines; however, only the latter works in all browsers and is more "correct" for Javascript.




Reader Comments