如果我尝试这段代码:
import nltk
pattern = [(r'(March)$','MAR')]
tagger=nltk.RegexpTagger(pattern)
print tagger.tag('He was born in March 1991')
我得到的输出类似于:
[('H',None),('e',None),('',None),('w',None),('a',None),('s',None) ,('',无),>('b',无),('o',无),('r',无),('n',无),('',无),( 'i',无),('n',无),('',无),('M',无),('a',无),('r',无),('c' ,无),('h',无),('',无),('1',无),('9',无),('9',无),('1',无) ]
事实上,我希望这个标记器能够识别带有“MAR”标记的“March”字样。
答案 0 :(得分:5)
这里试试这个:
import nltk
pattern = [(r'(March)$','MAR')]
tagger = nltk.RegexpTagger(pattern)
print tagger.tag(nltk.word_tokenize('He was born in March 1991'))
你必须对单词进行标记。
这是我得到的输出:
[('He', None), ('was', None), ('born', None), ('in', None), ('March', 'MAR'), ('1991', None)]