import re re.findall(".", "hola") re.findall(".", "hola") ['h', 'o', 'l', 'a'] re.findall(".*", "hola") ['hola', ''] re.findall(".", "hola") ['h', 'o', 'l', 'a'] re.findall(".+", "hola") ['hola'] re.findall("pepe", "pepe.txt") ['pepe'] re.findall("pepin", "pepe.txt") []
a = raw_input("Introduce tu DNI:").strip() Introduce tu DNI:46975422s re.findall("[0-9]{8}[A-Za-z]", a) ['46975422s'] re.findall("[0-9]{8}[A-Z]", a) []
Acerca de la r al principio del string para RE:
a=r"^([A-Za-z]+) .* ([0-9]{4})$"
Significa RAW, sin necesidad de escapar caracteres, una solución muy útil para no tener que escapar backslashes. De esta forma la siguiente expresión
r"\n"
es una cadena que contiene 2 caracteres “\” y “n”, mientras que
"\n"
es una cadena que contiene un solo caracter, el salto de linea.