生成一个随机字符串(无空格),能否鉴别出这个字符串中是否有自然语言中的单词。比如“ervmothersdclovecsasd”,这个字符串中就存在“mother”和“love”这两个单词。
于是我想到了对输入的词进行划分。这时就要用到了外部字典文件,我把常用的单词导入到txt文件中(不太清楚NTLK是否有类似的功能,寒假再研究一下,这里先把我想要做的实现一下)如图,这样,对每个连续的字符串能够进行自然语言的划分。这里用到的是正向最大匹配算法。
字典文件(最好是一个牛津词典):

需要词典文件下载链接请给我留言。
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35  | 
						note1 = input("Enter your input: ") wordlist = [] get_list = [] f = open('C:\\Users\\dell\\desktop\\big.txt', 'r') for line in f:     nlen = len(line)-1     wordlist.append(line[:nlen]) f.close() def divide_str(note, wordlist):     i = 100     head = 0     flag = 0     while head <= len(note) - 1:         if head >= (len(note)-i):             i = len(note)-head         for p in range(i):             rear = head + i - p             flag = 0             for each in wordlist:                 if note[head:rear] == each:                     get_list.append(each)                     # print(each)                     head = head + len(each)                     flag = 1                     break             if flag == 1:                 break         if flag == 0:             head = head + 1 divide_str(note1, wordlist) print(get_list)  | 
					
截图显示
![]()






求词典文件,谢谢啦!!!!!!!
词典文件可以自己用txt建一个,可以用搜索引擎找找英文词典txt啥的
求词典文件,谢谢啦
词典文件可以自己用txt建一个,可以用搜索引擎找找英文词典txt啥的