Bigram分词
一、问题描述
给出第一个词 first 和第二个词 second,考虑在某些文本 text 中可能以 “first second third” 形式出现的情况,其中 second 紧随 first 出现,third 紧随 second 出现。
对于每种这样的情况,将第三个词 “third” 添加到答案中,并返回答案。
示例1:
输入:text = "alice is a good girl she is a good student",
first = "a", second = "good"
输出:["girl","student"]
示例2:
输入:text = "we will we will rock you",
first = "we", second = "will"
输出:["we","rock"]
二、解题思路
- 利用字符串分隔符split()将文本text分隔成多个字符串,并返回包含分隔结果的列表text_list;
- 利用enumerate()函数,分别将将text_list里的每个单词赋给word,单词所在下标赋给index
- 判断异常情况:如果所给的first,second是文本最后的两个单词则退出
- 当找到first和second时—word==fiest,text_list[index+1]==second时,利用列表插入方法append()–用于向列表尾部追加一个元素,找到"third"单词
三、核心代码
- 测试
- 普适