How to construct two regex patterns into one?
For example I have one long pattern and one smaller, I need to put smaller one in front of long one.
var pattern1 = ':\(|:=\(|:-\(';
var pattern2 = ':\(|:=\(|:-\(|:\(|:=\(|:-\('
str.match('/'+pattern1+'|'+pattern2+'/gi');
This doesn’t work. When I’m concatenating strings, all slashes are gone.
You have to use
RegExp:If you have a backslash in your pattern to escape a special regex character, (like
\(), you have to use two backslashes in the string (because\is the escape character in a string):new RegExp('\\(')would be the same as/\(/.So your patterns have to become: