George Reith
George Reith

Reputation: 13476

JavaScript regex woes

So I have come up with the following Regex: /((?:\\u2B1C)+)|((?:\\u2B1B)+)/g.

It is to be used to parse the string of Unicode characters below - comprimised of \u2B1C and \u2B1B. I want it to match as many of either in a row and then pass it to the replace function. I have tested it over at http://regexpal.com/ and it matches my input text perfectly.

However when I go to use it in a String.replace() nothing happens whatsoever, I receive no console message, no nada.

Can someone point me in the right direction here?

In usage:

var output = s.replace(/((?:\\u2B1C)+)|((?:\\u2B1B)+)/g, function(match) {
  console.log(match);
  return '%c' + match;
});

Text to match:

"\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1B\u2B1C\u2B1C\u2B1C\u2B1B\u2B1B\u2B1B\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1B\u2B1B\u2B1B\u2B1C\u2B1C\u2B1B\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1B\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C
\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C\u2B1C"

Upvotes: 2

Views: 54

Answers (1)

Tim Pietzcker
Tim Pietzcker

Reputation: 336478

Don't escape the backslashes:

/((?:\u2B1C)+)|((?:\u2B1B)+)/g

or simply (you don't need all these groups):

/\u2B1C+|\u2B1B+/g

Since you're only matching single (repeated) characters, you can also use a character class: (thanks to Niet the Dark Absol (what's an Absol?)

/([\u2B1B\u2B1C])\1*/g

Upvotes: 4

Related Questions