Quiero usar la entrada de un usuario como patrón de expresiones regulares para una búsqueda en algún texto. Funciona, pero ¿cómo puedo manejar casos en los que el usuario pone caracteres que tienen significado en expresiones regulares? Por ejemplo, el usuario quiere buscar Word (s)
: el motor de expresiones regulares tomará el (s)
como grupo. Quiero que lo trate como una cuerda "(s)"
. Puedo ejecutar replace
la entrada del usuario y reemplazar el (
con \(
y el )
con, \)
pero el problema es que tendré que reemplazar cada símbolo de expresión regular posible. ¿Conoces alguna forma mejor?
repl
argumento parare.sub
es una cadena, no una expresión regular; aplicarlore.escape
no tiene ningún sentido en primer lugar.