Error using both lookahead and look behind regex
javascript, node.js, regex
Solution
JavaScript regex does not support lookbehind at all.
Sources:
- http://www.regular-expressions.info/lookaround.html#limitbehindand
- http://www.regular-expressions.info/javascript.html
- https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions
However, you can fake it in some cases.
Problem
I am having a problem using the following regex. It works fine in regexr and rubular but it gives me an error when running it on node.js. I am fairly new to using regex and i'm not sure what i'm doing wrong. It will work if I knock off the `(?<= )` so I presume that is the problem. I'm trying to match 'is' with a leading and trailing space using `/(?<= )is(?= )|==/g` Example with test words: http://regexr.com?33781 Node error output ``` temp = temp.replace(/(?<= )is(?= )|==/g, '==='); ^ SyntaxError: Invalid regular expression: /(?<= )is(?= )|==/: Invalid group at new RegExp (unknown source) ```