From 4c653c2e87ba5fb2735ccbbf04d78a4d56c60dd1 Mon Sep 17 00:00:00 2001 From: Erickson Silva Date: Wed, 25 May 2016 18:07:43 -0300 Subject: [PATCH] Corrige tratamento de palavras compostas --- src/AplicaSinonimos.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/AplicaSinonimos.py b/src/AplicaSinonimos.py index 8e80136..b3e6ec3 100644 --- a/src/AplicaSinonimos.py +++ b/src/AplicaSinonimos.py @@ -7,6 +7,7 @@ #LAViD - Laboratório de Aplicações de Vídeo Digital import os +import re import csv import sys from nltk.tree import Tree @@ -58,12 +59,15 @@ class AplicaSinonimos(object): sentenca_corrigida = "_".join(lista).upper() except: sentenca_corrigida = "_".join([str(x[0]) for x in lista]).upper() - for p in palavras_compostas: - if p in sentenca_corrigida: - sentenca_corrigida = sentenca_corrigida.replace(p, p.replace("_", "#*#")) + for m in re.finditer(p, sentenca_corrigida): + first = "_" if m.start() == 0 else sentenca_corrigida[m.start()-1] + last = "_" if m.end() == len(sentenca_corrigida)-1 else sentenca_corrigida[m.end()] + if first == "_" and last == "_": + sentenca_corrigida = sentenca_corrigida.replace(p, p.replace("_", "#*#")) return sentenca_corrigida.replace("_", " ").replace("#*#", "_") + def carregar_palavras_compostas(self): path = self.localizar_arquivo_palavras_compostas() return set(open(path).read().decode('utf-8').split()) -- libgit2 0.21.2