7

Экранирование строки для использования в регулярных выражениях JavaScript [duplicate]

6

Я пытаюсь построить регулярное выражение в JavaScript на основе ввода пользователя:

function FindString(input) {
    var reg = new RegExp('' + input + '');
    // [snip] выполнение поиска
}

Однако регулярное выражение работает некорректно, когда ввод пользователя содержит символы ? или *, так как они интерпретируются как специальные символы регулярных выражений. На самом деле, если пользователь введет несбалансированный ( или [ в своей строке, регулярное выражение становится недопустимым.

Какую функцию JavaScript я должен использовать, чтобы правильно экранировать все специальные символы для использования в регулярных выражениях?

0 ответ(ов)

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь