Expresiones regulares de Python: Captura de archivos de varias líneas basado en una condición.
Tengo un archivo de texto similar al siguiente:
<Start
1;
b;
c;
d;
<End
<Start
2;
b;
c;
d;
<End
<Start
1;
b;
c;
d;
<End
Básicamente, este archivo de texto consta de 3 conjuntos que comienzan con
me gustaría capturar solo los números que tienen “1”. los datos esperados serían los siguientes:
<start
1;
b;
c;
d;
<end
<start
1;
b;
c;
d;
<end
estoy tratando de encontrar una forma de hacerlo a través de python regex, pero hasta ahora no he encontrado ningún método. agradecería si pudiera obtener ayuda de esta comunidad. gracias de antemano. me=”” gustaría=”” capturar=”” solo=”” los=”” números=”” que=”” tienen=”” “1”.=”” los=”” datos=”” esperados=”” serían=”” los=”” siguientes:=”” <start=”” 1;=”” b;=”” c;=”” d;=”” <end=”” <start=”” 1;=”” b;=”” c;=”” d;=”” <end=”” estoy=”” tratando=”” de=”” encontrar=”” una=”” forma=”” de=”” hacerlo=”” a=”” través=”” de=”” python=”” regex,=”” pero=”” hasta=”” ahora=”” no=”” he=”” encontrado=”” ningún=”” método.=”” agradecería=”” si=”” pudiera=”” obtener=”” ayuda=”” de=”” esta=”” comunidad.=”” gracias=”” de=””></end.
me gustaría capturar solo los números que tienen “1”. los datos esperados serían los siguientes:
<start
1;
b;
c;
d;
<end
<start
1;
b;
c;
d;
<end
estoy tratando de encontrar una forma de hacerlo a través de python regex, pero hasta ahora no he encontrado ningún método. agradecería si pudiera obtener ayuda de esta comunidad. gracias de antemano.>
davy.ai
Puedes utilizar Python Regex para capturar solamente los números que contengan “1” en el archivo de texto. Aquí tienes un ejemplo de cómo hacerlo:
la salida debería ser:
<start
1;
b;
c;
d;
<end
<start
1;
b;
c;
d;
<end re.dotall)=”” coincidencias=”patrón.findall(texto)” imprime=”” las=”” coincidencias=”” for=”” coincidencia=”” in=”” coincidencias:=”” print(coincidencia)=”” “`=”” la=”” salida=”” debería=”” ser:=”” <start=”” 1;=”” b;=”” c;=”” d;=”” <end=”” <start=”” 1;=”” b;=”” c;=”” d;=””></end’, re.dotall)
coincidencias = patrón.findall(texto)
imprime las coincidencias
for coincidencia in coincidencias:
print(coincidencia)
“`
la salida debería ser:
<start
1;
b;
c;
d;
<end
<start
1;
b;
c;
d;
<end>