Как объединить регулярные выражения в JavaScript? - PullRequest
2 голосов
/ 23 августа 2009

это не что я прошу:

объединить несколько регулярных выражений в одно регулярное выражение

есть ли способ добавить регулярное выражение в другое (на языке javascript) ?

причина этого состоит в том, чтобы упростить обслуживание кода (например, если включенная строка длинная или ее проще обслуживать непрограммисту).

в Python, например, я бы написал что-то вроде:

regstr1 = 'dogs|cats|mice'
regstr_container = '^animal: (cows|sheep|%s|zebra)$' % regstr1
re.compile(regstr_container)

однако в javascript регулярное выражение не является строкой.

re = /^animal: (rami|shmulik|dudu)$/;

или я что-то упустил?

Ответы [ 2 ]

5 голосов
/ 23 августа 2009

Вам не нужно использовать буквальную запись. Вместо этого вы можете создать новый объект RegExp.

var myRegex = new RegExp("^animal: (rami|shmulik|dudu)$");
2 голосов
/ 23 августа 2009
var regstr1 = 'dogs|cats|mice',
regstr_container = '^animal: (cows|sheep|'+ regstr1 +'|zebra)$',
regex = RegExp(regstr_container);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...