Last active
November 26, 2023 21:51
-
-
Save mariaerbiste/152eaef3576f29bf5d882188e8f59d6c to your computer and use it in GitHub Desktop.
padronização de texto e criação de "panfleto"
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import re | |
#posição [0] artista | |
#posição [1] local | |
def encontrar_artista_local(texto): | |
return re.findall('".+"', texto) | |
def encontrar_data(texto): | |
datas = re.findall('[0-9]{2}/[0-9]{2}', texto) or re.findall('[0-9]{2}/[a-z]{3}', texto) | |
if datas is not None: | |
return datas | |
def encontrar_turne(texto): | |
return re.findall(r'(?:turnê|show|espetáculo)\s+(.*?)[.,;!?)\]]', texto) | |
def encontrar_cidade(texto): | |
return re.search('[a-zA-Z]+, [A-Z]{2}', texto).group() | |
def encontrar_site(texto): | |
return re.search('[a-z]+\\.[a-z.]+[a-z]', texto).group() | |
def encontrar_valor_ingresso(texto): | |
ingresso = re.search('R\\$ [0-9]+', texto) or re.search('[0-9]+ reais', texto) | |
if ingresso is not None: | |
return ingresso.group() | |
def encontrar_codigo(texto): | |
codigo = re.search('[A-Z]{3,}', texto) | |
if codigo is not None: | |
return codigo.group() | |
def verificar_maior_palavra(texto): | |
resultados = [ | |
encontrar_artista_local(texto), | |
encontrar_data(texto), | |
encontrar_cidade(texto), | |
encontrar_site(texto), | |
encontrar_valor_ingresso(texto), | |
encontrar_codigo(texto) | |
] | |
maior_palavra = max([palavra for resultado in resultados if resultado for palavra in resultado], key=len, default='') | |
tamanho_linha = len(maior_palavra) + 4 | |
return tamanho_linha | |
n = int(input("Digite o número de linhas: ")) | |
texto = "" | |
for i in range(n): | |
texto += input() + "\n" | |
linhas_artista = encontrar_artista_local(texto) | |
linha_artista = linhas_artista[0] | |
tamanho = verificar_maior_palavra(texto) | |
turne = encontrar_turne(texto) | |
cidade = encontrar_cidade(texto) | |
localidade = encontrar_artista_local(texto) | |
local = localidade[1] | |
data = encontrar_data(texto) | |
site = encontrar_site(texto) | |
preco = encontrar_valor_ingresso(texto) | |
cupom = encontrar_codigo(texto) | |
print('#' *tamanho) | |
print('#{:^{tamanho}}#'.format(linha_artista[0].upper(), tamanho=tamanho)) | |
print('#' * tamanho) | |
print('#{:^{tamanho}}#'.format(turne, tamanho=tamanho)) | |
print('#{:^{tamanho}}#'.format(cidade, tamanho=tamanho)) | |
print('#{:^{tamanho}}#'.format(data, tamanho=tamanho)) | |
print('#{:^{tamanho}}#'.format(local[1], tamanho=tamanho)) | |
print('#{:^{tamanho}}#'.format(site, tamanho=tamanho)) | |
print('#' * tamanho) | |
print(f'|{"Ingresso R$" + str(preco):^{tamanho}}|') | |
print(f'|{"Utilize o cupom" + str(cupom):^{tamanho}}|') | |
print('+' + '-' * tamanho + '+') | |
""" | |
# ENTRADAS | |
#1 | |
texto = ''' "RPM" com único show Alvorada Voraz, na "Esplanada dos Ministérios". | |
Brasília, DF, por 0 reais! Mais em www.rpm.mus.''' | |
#2 | |
texto = "When in Rome" no "Colosseum" com a turnê The Promise, Londrina, PR em 13/jan. | |
R$ 123.45 no site right.words.to.say. | |
#3 | |
texto = Os "Raimundos" chegaram à JamPessoa, PB, com a turnê Retorno da Jurema! | |
Preço único de 42 reais por tiquete, todos os detalhes estão no site palhas.do.coqueiro.br. | |
Apresentações em 26/fev, 27/fev e 28/fev no "Berssange's". | |
#4 | |
texto = A banda "Queen" volta aos palcos na turnê Mustapha Mustapha Mustapha Ibrahim. | |
Todas as informações estão no site www.queen.mus. | |
Serão apresentações em Brasília, DF, nos dias 31/10 e 01/11, no estádio "Mané Garrincha". | |
Ingressos a partir de R$ 500, mas você pode usar o cupom MAISAPC! | |
""" | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment