正则表达式应用,造句式提取语句(我自己起的名字)

如下文本:

text = "这个人很好。我不但学习好,而且长得帅。他非常棒!"

提取''不但...,而且..."描述的相关语句

import re

pattern_01 = '[。,,.;;!!](.{0,3}?不但.{2,20}?[,\s,;;]而且.{1,20}?[\s.。;;!!])'
res_01 = re.findall(pattern_01,'这个人很好。我不但学习好,而且长得帅。非常棒!')
print(res_01)

结果:

 写成传参的函数如下:

import re

def KeywordsCheck(keyswords,text):
    pattern = '[。,,.;;!!](.{0,3}?%s.{2,20}?[,\s,;;]%s.{1,20}?[\s.。;;!!])'%keyswords
    result = re.findall(pattern,text)
    return result

keywords = ('不但','而且')
text = '这个人很好。我不但学习好,而且长得帅。非常棒!'

print(KeywordsCheck(keywords,text))

结果如上

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐