[ Foro de Python ]

re.IGNORECASE en python

30-Apr-2020 00:19
Invitado (Javier)
3 Respuestas

Hola,
Trato de hacer un programa en donde el usuario ingrese una palabra y el programa arroje el número de palabras que se encontraron. Está contando mal las palabras porque toma en consideración mayúsculas y minúsculas. Estoy tratando de utilizar re.IGNORECASE pero no he conseguido hacer que funcione. Ya también intenté con el re.compile. Alguien tiene alguna idea?
No puedo hacer que ignorecase deje de tener color rojo, lo que creo indica el error

Saludos

import re

n=open('romeo.txt')
m=n.read()
x=input('Ingresa palabra a buscar:')
z=re.findall(x, m,re.IGNORECASE)
c=z.count(x)
print(c)


30-Apr-2020 00:41
Nacho Cabanes (+83)

Puedes probar así:

import re
texto = 'Hola hola hasta luego HOLA'
re.findall('(?i)hola', texto)


30-Apr-2020 01:26
Invitado (Javier)

Gracias por la respuesta.

Sabes cómo hacerle para que en lugar de ingresar yo la palabra a buscar, el usuario la ingrese? o sea que el primer argumento de re.findall sea una variable y con base en eso la busque en cualquier texto y que no tome en consideración si es mayúscula o no.

Saludos


30-Apr-2020 01:28
Nacho Cabanes (+83)

Bastar con concatenar dos cadenas, para formar un patrón de búsqueda similar a ese.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)