开发者社区> 问答> 正文

检查字符串值的子字符串是否包含python中的任何字典单词

我想知道Python中是否有任何函数可以检查字符串值的子字符串,包括任何字典单词。

例如 check_str =“!$#apple!ed”

check_str包括“ apple”,这是一个字典单词,我想检查一下是否有任何方法可以检查它。

问题来源:stackoverflow

展开
收起
is大龙 2020-03-24 21:52:08 711 0
1 条回答
写回答
取消 提交回答
  • 这是自然语言的临界处理方法,但是一个幼稚的解决方案是从文本文件中加载有效单词列表,将字符串拆分为字母字符块,然后在字典中查找每个字符。

    >>> import re
    >>> import requests
    >>> s = "!$#apple!ed"
    >>> url = "https://raw.githubusercontent.com/dwyl/english-words/master/words_dictionary.json"
    >>> words = requests.get(url).json()
    >>> alpha_chunks = re.findall(r"[a-z]+", s, re.I)
    >>> [x for x in alpha_chunks if x.lower() in words]
    ['apple', 'ed']
    

    事实证明,除“ apple”之外,“ ed”是一个完全有效的词典单词,因此,如果您打算拒绝该单词,请使用适合您需要的单词列表。另外,上面要求的字典为6 mb,因此您可能希望根据使用情况将其缓存。

    回答来源:stackoverflow

    2020-03-24 21:52:15
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载