la syntaxe javascript erreur: invalid expression régulière

Je suis en train d'écrire une application en javascript. Dans mon application, il ya une option pour rechercher une chaîne de caractères/regex. Le problème, c'est match retourne javascript d'erreur si l'utilisateur tape une fausse valeur.
Exemple de code:

  function myFunction() {
      var filter = $("#text_id").val();
      var query = "select * from table";
      var found;
      if (query.match(filter) != -1) {
        found = true;
      } 
      else{
        found = false;
      }
       //Do something
    }

jsfiddle: http://jsfiddle.net/ZVNMq/

Entrer la chaîne de caractères: sel/\

Match retourne js erreur Uncaught SyntaxError: Invalid regular expression: /sel\/: \ at end of pattern.

Est-il un moyen de vérifier si la chaîne est valide regex ou pas?

try catch est la manière la plus rapide et indolore.
ecoutant nhahtdh conseils serait une bonne idée en tout cas. dans votre situation, vous avez pour échapper au échapper symbole `. en règle générale, on doit s'échapper tous les caractères ayant une signification spéciale dans une regexp si vous permettez non validées saisie de l'utilisateur du modèle. si vous venez d'arriver à stocker les données dans des nœuds dom, vous aurez probablement obtenir le long sans effort supplémentaire.

OriginalL'auteur Sandy | 2013-04-23