RegExp заменить часть выражения переменной [дубликат]

88
07 марта 2021, 16:00
На этот вопрос уже даны ответы здесь:
Переменная в регулярном выражении (3 ответа)
Закрыт 1 год назад.

Подскажите как можно заменить выражение

> var regex = new RegExp(/.*Math*/) 

чтобы вместо Math можно было подставить значение переменной, а сама конструкция осталось прежней.

Answer 1

В Вашем примере символы косой черты являются, как бы, указанием, что в них содержится регулярное выражение. Если Вам необходимо динамически создавать регулярное выражение, т.е. строку, то указывать эти косые черты не нужно.

var RegexEscape= function(s) { 
    return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); 
}; 
 
var regexString = "Math"; 
var regex = new RegExp('.*' + RegexEscape(regexString) + '*'); 
console.log(regex);

READ ALSO
Парсинг html страницы с помощью javascript

Парсинг html страницы с помощью javascript

Более или менее удалось разобраться в структуре страницы, та часть страницы, которая меня интересует выглядит вот так:

122
Разница между String() и + ''

Разница между String() и + ''

Есть ли разница между преобразованиями в строку:

99
Где в Google Sheets писать скрипт?

Где в Google Sheets писать скрипт?

Где в google sheets писать скрипт, который мог работать с ячейками, изменять данные и тп

123