Parsing NLP

21 views
Skip to first unread message

Janaina Sabino

unread,
Aug 31, 2017, 9:57:49 AM8/31/17
to Python Brasil
Olá pessoal, 

Alguém aqui conhece parsings em Python? Tenho uma dúvida: preciso fazer um parsing: um texto de entrada que vai passar pela gramática e a saída sao todas as entradas que a gramática encontrar no texto. O problema é que meus nao-terminais sao arquivos de listas externos e eu nao consigo visualizar uma maneira de fazer...

Exemplo de pseudo-código:

1) Abrir um texto

2) Passar a gramática (só um exemplo): 

grammar(""" 

S -> NP VP

NP -> DET N

VP -> V N

DET -> lista_det.txt

N -> lista_n.txt

V -> lista.txt""")

3) Printar os resultados do texto que obedecem à gramática 


Seria possível? Obrigada! :)

Arnoldo Nunes

unread,
Aug 31, 2017, 7:19:30 PM8/31/17
to python...@googlegroups.com
Janaína,

Até onde sei, não dá pra ler um txt em uma parte da lista de regras.
É possível ler de um txt, se todas as regras estiverem nele, incluindo os não-terminais.
O que pode ser feito é gerar um txt maior a partir da concatenação do txt com as regras e cada um dos txt's que contém os não-terminais.
O conteúdo destes arquivos de não-terminais estão no formato da sintaxe exigida? tipo, o conteúdo de lista_det.txt está como abaixo?
'o' | 'a' | 'os' | 'as' ...


Atenciosamente,

Arnoldo Nunes da Silva



Professor Assistente
Depto. de Ciência da Informação
Fone: (85) 3366 7952

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasil+unsubscribe@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasil+unsubscribe@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Janaina Sabino

unread,
Sep 1, 2017, 9:03:21 AM9/1/17
to Python Brasil
Olá Arnoldo,

Obrigada pela resposta e pela luz de como proceder. Já estou tentando fazer da maneira que você sugeriu. A lista de terminais nao estava na sintaxe exigida! Obrigada por lembrar disso!

Obrigada mesmo, Arnoldo!!! :)


---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages