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