Передача переменной в метод JavaScript RegExp

  • Автор темы pro1
  • 44
  • Обновлено
  • 13, May 2024
  • #1
Как передать переменную в метод сопоставления JavaScript RegExp?

У меня есть этот код:
 
let regex_variable = "word1|word2|word3";
let rgx = new RegExp("/(?<= )(" + regex_variable + ")(?= )/").source;
Код (разметка): Я хотел бы сохранить «слово1|слово2|слово3» в переменной, а затем интегрировать его в приведенный выше код.

Я искал в Google и пробовал разными способами, но ничего не помогло.

В качестве быстрого примера: следующий код не работает...
  let rgx = new RegExp(/(?<= )(word1|word2|word3)(?= )/).source;
Код (разметка): Спасибо, Алекс

pro1


Рег
05 Jun, 2015

Тем
1

Постов
2

Баллов
12
  • 18, May 2024
  • #2
Выше я перечислил только три регулярных выражения, но у меня их около двадцати, и такой подход позволяет мне держать все организованным и простым для понимания. Прямо сейчас я ищу способ использовать переменные внутри методов RegExp, описанных выше.

Это добавило бы гибкости и еще больше упростило бы ситуацию. Как лучше всего это сделать, сохранив при этом формат, указанный выше? Извините, мой опыт работы с JS очень ограничен.

Я использую это со сценарием, который выделяет ключевые слова на веб-страницах. Алекс
 

Steadyhost


Рег
08 Dec, 2013

Тем
0

Постов
2

Баллов
2
  • 09, Jun 2024
  • #3
Я не думаю, что вы можете использовать «или» (|) между /exp/ в JS. Хотя я надеюсь, что это код на стороне сервера... потому что, если ваш код на стороне клиента становится таким запутанным с регулярным выражением, что-то СЕРЬЕЗНО не так либо с данными, либо с тем, как сервер их обрабатывает.
 

Екатерина Васильевна


Рег
16 Dec, 2012

Тем
1

Постов
5

Баллов
15
Тем
49554
Комментарии
57426
Опыт
552966

Интересно