2014-10-21 1 views
0

비 - 화이트 코드 문자열에서 NLTK의 형태소 분석 결과를 얻고 싶습니다. 예를 들어파이썬 NLTK에서 공백이 아닌 문자열에 대한 형태소 분석 결과를 얻고 싶습니다.

:

문자열은 "societynamebank"입니다.

나는 ['society', 'name', 'bank']

어떻게 NLTK에 그 결과를 얻을 싶어?

+0

'NLTK'에는 해당 모듈이 없습니다. 영어 텍스트 또는 독일어 텍스트로 작업하고 있습니까? – alvas

+0

영어 테스트. 나는 url 하에서 사용한다. http://stackoverflow.com/questions/195010/how-can-i-split-multiple-joined-words – user1371662

+0

이 변형 분석기가 해당 문자열을 나눌 수 있기를 기대합니다. – user1371662

답변

2

다음은 간단한 코드입니다. 형태 분석을 위해 pyEnchant 사전을 사용합니다 :

>>> import enchant 
>>> d = enchant.Dict("en_US") 
>>> tokens=[] 
>>> def tokenize(st): 
... if not st:return 
... for i in xrange(len(st),-1,-1): 
...  if d.check(st[0:i]): 
...   tokens.append(st[0:i]) 
...   st=st[i:] 
...   tokenize(st) 
...   break 
... 
>>> tokenize("societynamebank") 
>>> tokens 
['society', 'name', 'bank'] 
>>> tokens=[] 
>>> tokenize("HelloSirthereissomethingwrongwiththistext") 
>>> tokens 
['Hello', 'Sir', 'there', 'is', 'something', 'wrong', 'with', 'this', 'text'] 
관련 문제