这是一个例子,我是如何标记一个短语,我的语言是西班牙语
texto= "esto es un texto, para el sr. gómez. Esto; es una prueba que puedes encontrar en www.google.com quisiera encontrarla.. claro esta,.Quisiera mejorarlo"
当我使用nltk标记我的短语时,这是输出:
['esto', 'es', 'un', 'texto', ',', 'para', 'el', 'sr.', 'gómez', '.', 'Esto', ';', 'es', 'una', 'prueba', 'que', 'puedes', 'encontrar', 'en', 'www.google.com','quiero','encontarla..','esta,.', 'quisiera','mejoralo']
除了sr.
或www.google.com
这样的有效分数外,我如何消除标点符号
from nltk.tokenize import word_tokenize
texto= "esto es un texto, para el sr. gómez. Esto; es una prueba que puedes encontrar en www.google.com quisiera encontrarla.."
palabras_tokenizadas=(word_tokenize(texto,"spanish"))
print(palabras_tokenizadas)
结果应该是:
['esto', 'es', 'un', 'texto', 'para', 'el', 'sr.', 'gómez', 'Esto', 'es', 'una', 'prueba', 'que', 'puedes', 'encontrar', 'en', 'www.google.com', 'quisiera', 'encontrarla', 'claro', 'esta', 'quisiera', 'mejorarlo']
我试过这样的方法,但它并不能解决我的问题(像"encontarla.."
,"esta,."
这样的词的问题)
punctuation = [",", ";", ".",...............] # The tokens that I want to skip
palabras_tokenizadas_1 = [ palabra for palabra in palabras_tokenizadas if palabra not in punctuation ]
我想在任何一个有分数的句子中,用最好的方法来解决我的问题,而不是仅仅用这句话来解决问题。你怎么能做到
一种方法是使用正则表达式:
nltk
非常了解正则表达式,因此您可以让标记器自己应用这个mod相关问题 更多 >
编程相关推荐