Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python识别字符串中的自然语言(单词)

Python识别字符串中的自然语言(单词)

作者头像
里克贝斯
发布于 2021-05-21 08:49:22
发布于 2021-05-21 08:49:22
2.5K1
举报
文章被收录于专栏:图灵技术域图灵技术域

生成一个随机字符串(无空格),能否鉴别出这个字符串中是否有自然语言中的单词。比如“ervmothersdclovecsasd”,这个字符串中就存在“mother”和“love”这两个单词。

于是我想到了对输入的词进行划分。这时就要用到了外部字典文件,我把常用的单词导入到txt文件中(不太清楚NTLK是否有类似的功能,寒假再研究一下,这里先把我想要做的实现一下)如图,这样,对每个连续的字符串能够进行自然语言的划分。这里用到的是正向最大匹配算法。

字典文件(最好是一个牛津词典):

需要词典文件下载链接请给我留言。

Python

代码语言:txt
AI代码解释
复制
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)

截图显示

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-12-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
急求下载链接
急求下载链接
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
【深度学习】自然语言处理
NLP(Nature Language Processing,自然语言处理)是计算机学科及人工智能领域一个重要的子学科,它主要研究计算机如何处理、理解及应用人类语言。所谓自然语言,指人说的话、人写的文章,是人类在长期进化过程中形成的一套复杂的符号系统(类似于C/Java等计算机语言则称为人造语言)。以下是关于自然语言处理常见的定义:
杨丝儿
2022/03/20
8170
【深度学习】自然语言处理
HanLP《自然语言处理入门》笔记--2.词典分词
笔记转载于GitHub项目:https://github.com/NLP-LOVE/Introduction-NLP
mantch
2020/02/18
1.3K0
基于Trie 树实现简单的中文分词
中文分词是中文自然语言处理的基础,中文分词的正确率如何直接影响后续的词性标注(也有些词性标注算法不需要事先分词,但标注效果往往比先分词后标注差),实体识别、句法分析、语义分析。常用的分词方法主要有依赖词典的机械分词和序列标注方法。
致Great
2022/05/13
9691
基于Trie 树实现简单的中文分词
【手把手教你做项目】自然语言处理:单词抽取/统计
作者 白宁超 成都信息工程大学硕士。 近期关注数据分析统计学、机器学习。 原文:http://www.cnblogs.com/baiboy/p/zryy1.html 摘要:自然语言处理或者是文本挖掘以及数据挖掘,近来一直是研究的热点。很多人相想数据挖掘,或者自然语言处理,就有一种莫名的距离感。其实,走进去你会发现它的美,它在现实生活中解决难题的应用之美,跟它相结合的数学之美,还有它与统计学的自然融合。语言只是一种实现工具,真正难度的是模型的理解和对模型的构建。本文结合自然语言处理的基本方法,完成对2002
机器学习AI算法工程
2018/03/13
1.6K0
【手把手教你做项目】自然语言处理:单词抽取/统计
【一文讲解深度学习】语言自然语言处理(NLP)第一篇
NLP(Nature Language Processing,自然语言处理)是计算机及人工智能领域的一个重要的子项目,它研究计算机如何处理、理解及应用人类语言。是人类在漫长的进化过程中形成的计算机语言复杂的符号等系统(类似C/Java的符号等系统)。以下是关于自然处理的常见定义:
苏州程序大白
2022/04/14
1.7K0
【一文讲解深度学习】语言自然语言处理(NLP)第一篇
Python实现敏感词过滤
在我们生活中的一些场合经常会有一些不该出现的敏感词,我们通常会使用*去屏蔽它,例如:尼玛 -> **,一些骂人的敏感词和一些政治敏感词都不应该出现在一些公共场合中,这个时候我们就需要一定的手段去屏蔽这些敏感词。下面我来介绍一些简单版本的敏感词屏蔽的方法。
我被狗咬了
2020/05/08
6.1K0
Python实现敏感词过滤
读书笔记 | 《Python自然语言处理实战:核心技术与算法》| (1)
对词的词性标注,词性:动词、名词、形容词等,例如:我/r爱/v北京/ns天安门/ns。其中,ns代表名词,v代表动词,ns、v 都是标注,以此类推。
yiyun
2022/04/01
5610
读书笔记 | 《Python自然语言处理实战:核心技术与算法》| (1)
Python学习—字符串练习
小易喜欢的单词具有以下特性: 1.单词每个字母都是大写字母 2.单词没有连续相等的字母 列可能不连续。 例如: 小易不喜欢"ABBA",因为这里有两个连续的'B' 小易喜欢"A","ABA"和"ABCBA"这些单词 给你一个单词,你要回答小易是否会喜欢这个单词。
py3study
2020/01/08
1.3K0
C#实现前向最大匹、字典树(分词、检索)
场景:现在有一个错词库,维护的是错词和正确词对应关系。比如:错词“我门”对应的正确词“我们”。然后在用户输入的文字进行错词校验,需要判断输入的文字是否有错词,并找出错词以便提醒用户,并且可以显示出正确词以便用户确认,如果是错词就进行替换。
SpringSun
2020/08/11
9340
C#实现前向最大匹、字典树(分词、检索)
【自然语言处理】统计中文分词技术(一):1、分词与频度统计
  本质上是字符串匹配的方法,将一串文本中的文字片段和已有的词典进行匹配,如果匹配到,则此文字片段就作为一个分词结果。 1)正向最大匹配法(从左到右的方向); 2)逆向最大匹配法(从右到左的方向); 3)最小切分(每一句中切出的词数最小) 4)双向最大匹配(进行从左到右、从右到左两次扫描
Qomolangma
2024/07/30
4750
【自然语言处理】统计中文分词技术(一):1、分词与频度统计
2021-10-13:单词接龙。字典 wordList 中从单词 beginWor
2021-10-13:单词接龙。字典 wordList 中从单词 beginWord 和 endWord 的 转换序列 是一个按下述规格形成的序列:序列中第一个单词是 beginWord 。序列中最后一个单词是 endWord 。每次转换只能改变一个字母。转换过程中的中间单词必须是字典 wordList 中的单词。给你两个单词 beginWord 和 endWord 和一个字典 wordList ,找到从 beginWord 到 endWord 的 最短转换序列 中的 单词数目 。如果不存在这样的转换序列,返回 0。力扣127。
福大大架构师每日一题
2021/10/13
7170
自然语言处理的基本问题——分词问题
注:本文选自人民邮电出版社出版的《PyTorch自然语言处理入门与实战》一书,略有改动。经出版社授权刊登于此。
机器学习AI算法工程
2022/12/13
1.3K0
自然语言处理的基本问题——分词问题
Python人工智能 | 二十二.基于大连理工情感词典的情感分析和情绪计算
从本专栏开始,作者正式研究Python深度学习、神经网络及人工智能相关知识。前一篇文章分享了CNN实现中文文本分类的过程,并与贝叶斯、决策树、逻辑回归、随机森林、KNN、SVM等分类算法进行对比。这篇文章将详细讲解通过自定义情感词典(大连理工词典)实现情感分析和情绪分类的过程,并与SnowNLP进行对比,为后续深度学习和自然语言处理(情感分析、实体识别、实体对齐、知识图谱构建、文本挖掘)结合做基础,希望对您有所帮助~
Eastmount
2024/02/23
1.3K0
Python人工智能 | 二十二.基于大连理工情感词典的情感分析和情绪计算
【Python环境】Python自然语言处理系列(1)
一:python基础,自然语言概念 from nltk.book import* 1,text1.concordance("monstrous") 用语索引 2,text1.similar("best") 3,text2.common_contexts(["monstrous","very"]) 4,text4.dispersion_plot(["citizens","democracy", "freedom", "duties","America"]) 5,text3.generate() 6,
陆勤_数据人网
2018/02/27
9210
【Python环境】Python自然语言处理系列(1)
Python NLTK自然语言处理:词干、词形与MaxMatch算法
CSDN:白马负金羁 自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。自然语言工具箱(NLTK,Natural Language Toolkit)是一个基于Python (http://lib.csdn.net/base/11)语言的类库,它也是当前最为流行的自然语言编程与开发工具。在进行自然语言处理研究和应用时,恰当利用NLTK中提供的函数可以大幅度地提高效率。本文就将通过一些实例来向读者介绍NLTK的使用。 开发环境:我所使用的Python版本是最新的3.5.1,NLTK版本是3.2。P
机器学习AI算法工程
2018/03/13
2.1K0
Python  NLTK自然语言处理:词干、词形与MaxMatch算法
跟着leedcode刷算法 -- 字符串2
给你一个字符串 s 和一个字符串列表 wordDict 作为字典,判定 s 是否可以由空格拆分为一个或多个在字典中出现的单词。
玖柒的小窝
2021/11/07
3330
跟着leedcode刷算法 -- 字符串2
关于自然语言处理系列-分词
在英文中单词之间是以空格作为自然分界符的,大多数情况下一个字即一个词;而中文分词则缺乏形式上的分界符,词以双字或多字组合居多。
python与大数据分析
2022/03/11
8000
NLP入门干货:手把手教你3种中文规则分词方法
导读:本文将讲解中文自然语言处理的第一项核心技术——中文分词技术,它是中文自然语言处理非常关键和核心的部分。
IT阅读排行榜
2020/11/06
9900
NLP入门干货:手把手教你3种中文规则分词方法
入门科普:一文看懂NLP和中文分词算法(附代码举例)
导读:在人类社会中,语言扮演着重要的角色,语言是人类区别于其他动物的根本标志,没有语言,人类的思维无从谈起,沟通交流更是无源之水。
IT阅读排行榜
2018/12/17
6.3K0
入门科普:一文看懂NLP和中文分词算法(附代码举例)
【自然语言处理(一)】相关基础技能
2.正则表达式(网上很多教程,关键还是理解每一个代表什么意思,还要多写,其实没什么大不了,这里就不写了)就只写写python中是怎么用的
西西嘛呦
2020/08/26
4960
推荐阅读
相关推荐
【深度学习】自然语言处理
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档