如何使用Python从文本中提取指定关键词并按要求打印
基础实现(精确子串匹配)
适合关键词无需额外边界校验的简单场景,直接检查关键词是否是文本的子串即可:
# 待处理文本 text = "Merhaba bugun bir miktar bas agrisi var, genellikle sonbahar gunlerinde baslayan bu bas agrisi insanin canini sikmakta. Bu durumdan kurtulmak icin neler yapmali." # 待匹配关键词集合 keywords = ('bas agrisi', 'kurtulmak') # 遍历校验并打印存在的关键词 for kw in keywords: if kw in text: print(kw)
运行后输出:
bas agrisi kurtulmak
进阶实现(正则边界匹配)
如果需要避免关键词误匹配到其他长单词的子串(比如避免关键词bas误匹配到baslayan),可以用正则的单词边界做校验:
import re text = "Merhaba bugun bir miktar bas agrisi var, genellikle sonbahar gunlerinde baslayan bu bas agrisi insanin canini sikmakta. Bu durumdan kurtulmak icin neler yapmali." keywords = ('bas agrisi', 'kurtulmak') for kw in keywords: # re.escape 处理关键词里的特殊正则字符,\b 匹配单词边界 if re.search(rf'\b{re.escape(kw)}\b', text): print(kw)
内容的提问来源于stack exchange,提问作者Prusa
相关产品推荐
相关产品推荐

