Возможный дубликат:
Есть ли функция RegExp.escape в Javascript?
Я пытаюсь создать регулярное выражение javascript на основе пользовательского ввода:
function FindString(input) { var reg = new RegExp('' + input + ''); // [snip] perform search }
Но регулярное выражение не будет работать корректно, когда пользовательский ввод содержит ?
или *
, потому что они интерпретируются как специальные выражения regex. На самом деле, если пользователь помещает в свою строку неуравновешенные (
или [
, регулярное выражение даже не действует.
Что такое функция javascript для правильного удаления всех специальных символов для использования в регулярном выражении?