Je veux utiliser la saisie d'un utilisateur comme modèle d'expression régulière pour une recherche sur du texte. Cela fonctionne, mais comment puis-je gérer les cas où l'utilisateur met des caractères qui ont un sens dans l'expression régulière? Par exemple, l'utilisateur souhaite rechercher Word (s)
: le moteur d'expression régulière prendra le en (s)
tant que groupe. Je veux qu'il le traite comme une chaîne "(s)"
. Je peux exécuter replace
sur l'entrée utilisateur et remplacer le (
avec \(
et le )
avec \)
mais le problème est que je devrai remplacer pour chaque symbole regex possible. Connaissez-vous un meilleur moyen?
repl
argument dere.sub
est une chaîne, pas une expression régulière; l'appliquerre.escape
n'a aucun sens en premier lieu.