草庐IT

找单词

全部标签

python - 基于python中的子字符串匹配提取整个单词

我正在寻找Python中的正则表达式。我有一个很长的文本字符串,并且我有一个子字符串列表可以在这个长文本字符串中进行匹配。示例子串在:'table','efurnish'示例字符串:'Todayisagooddaytodoupthetablefurnishings.Letsgotothestore.'对于“表格”,我想提取“表格”。对于“efurnish”,我想提取“tablefurnishing”。我当前的代码是:foriteminchecklist:pattern=r"[\s](.*)"+item+"([a-z]){0,2}[\s\.]"printpatternmatchObj=r

python - 从一组给定的单词中造出一个有意义的句子

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我正在开发一个程序,该程序需要根据给定的一组单词创建语法正确的句子。在这里,我将向程序传递一个字符串列表的输入,我的输出应该是一个有意义的句子,由这些单词和其他一些必要的单词组成。例如。Input:{'You','House','Beautiful'}Output:'Yourhouseisbeautiful'(or)'youhouseisbeautiful'Input:{'Father','Love','

python - 如何在 Python 中对 Levenshtein 距离超过 80% 的单词进行分组

假设我有一个列表:-person_name=['zakesh','oldmanLLC','bikash','goldmanLLC','zikash','rakesh']我正在尝试以这种方式对列表进行分组,以便Levenshteindistance两个字符串之间是最大的。为了找出两个词之间的比例,我使用了一个python包fuzzywuzzy.例子:->>>fromfuzzywuzzyimportfuzz>>>combined_list=['rakesh','zakesh','bikash','zikash','goldmanLLC','oldmanLLC']>>>fuzz.ratio(

python - 制作所有唯一单词的数据框及其计数和

我有一个这样的数据框df1id`textc11Helloworldhowareyoupeople12HellopeopleIamfinepeople13GoodMorningpeople-14GoodEvening-1我想让df2这样,它只包含df1的所有单词及其计数(总出现次数)和我想对c1列求和并在df2中为其创建一个新列(仅当该行中有单词时才求和)。预期输出:WordTotalcountPointshello22world11how11are11you11people31I11am11fine11Good2-2Morning1-1Evening1-1

python - 如何获取所有不包含数字的特定长度的单词?

我有一个输入(包括unicode):s="问题1:a12是a的个数,b1是cầuthủ的个数"我想获取所有不包含数字且超过2个字符的单词,期望输出:['is','the','number','of','is','the','number','of','cầu','thủ'].我试过了re.compile('[\w]{2,}').findall(s)得到了'Question1','a12','is','the','number','of','b1','is','the','number','of','cầu','thủ'有什么办法可以只得到没有数字的单词吗?

python - 定义单词的上下文 - Python

我认为这是一个有趣的问题,至少对我而言。我有一个单词列表,假设:photo,free,search,image,css3,css,tutorials,webdesign,tutorial,google,china,censorship,politics,internet我有一个上下文列表:编程世界新闻技术网页设计如果可能,我需要尝试将单词与适当的上下文匹配。也许以某种方式发现单词关系。有什么想法吗?帮助将不胜感激! 最佳答案 这听起来更像是一个分类/本体问题,而不是NLP。尝试WordNet用于标准本体。我在您陈述的问题中没有看到任

python - scikit-learn:标记化时不要分隔带连字符的单词

我正在使用CountVectorizer并且不想将带连字符的单词分成不同的标记。我已尝试将不同的pregex模式传递到token_pattern参数中,但未能获得所需的结果。这是我尝试过的:pattern=r'''(?x)#setflagtoallowverboseregexps([A-Z]\.)+#abbreviations(e.g.U.S.A.)|\w+(-\w+)*#wordswithoptionalinternalhyphens|\$?\d+(\.\d+)?%?#currency&percentages|\.\.\.#ellipses'''text='Ihatetraffic-

python - 如何使单词边界\b 在破折号上不匹配

我针对遇到的具体问题简化了代码。importrepattern=re.compile(r'\bword\b')result=pattern.sub(lambdax:"match","-word-word")我得到了'-match-match'但是我想要'-word-match'编辑:或者对于字符串"word-word-"我要"match-word-" 最佳答案 你需要的是消极的回顾。pattern=re.compile(r'(?引用documentation:(?Matchesifthecurrentpositioninthestr

python - 单词之间的删除距离

我试图找出需要删除多少个字符才能使这两个词相同。例如,“at”、“cat”将是1,因为我可以删除c,“boat”和“got”将是3,因为我可以删除b、a和g使其成为ot。我将这些单词放入字典中,并将它们的计数作为值。然后我遍历字典并查看该键是否存在于另一个字典中,否则我将差异加1。这是一个非常低效的算法吗?但它高估了我需要的删除数量。defdeletiondistance(firstword,secondword):dfw={}dsw={}diff=0foriinrange(len(firstword)):printfirstword[i]iffirstword[i]indfw:dfw

python - 只有在重复而不是单词的一部分时才用另一个替换字符

在Python3中,以下代码用于将*的字符串(两个或更多)替换为x。importrere.sub(r'\*(?=\*)|(?但是,如果我还想豁免作为“单词”一部分的*字符串,如下所示怎么办?(即字符串附加到一个或多个[a-zA-Z]字符。)text="Don'treplacefoo***or**bar,either."#unmodifiedtextexpected我该怎么做?我可能也可以匹配豁免的情况并使用替换函数来处理它们,但是有没有更好的方法? 最佳答案 regex=r"\s\*{2,}[\s\n]"这匹配2个或更多*字符,由空