我正在尝试构建类似于Google文本片段的东西。googlesnippet包含高亮显示的关键字,并很好地“移动”文本,以防关键字没有出现在所分析字符串的开头。在
例如:
关键词“nike”
干草堆串“lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lore ipsum dorlor lorem ipsum dorlor loreipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum也难怪nike是世界上最大的品牌多勒·洛勒姆·伊普苏姆·多勒
应该变成这个片段:
。。。lorem ipsum dorlor难怪耐克是世界上最大的品牌之一不是lorem ipsum dorlor lorem lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem ipsum dorlor lorem。。。在
到目前为止,我的想法是:
keywordPosition = haystack.lower().index(keyword.lower())
snippetStart = keywordPosition - 100
snippetEnd = keywordPosition + 200
haystack = " ..." + haystack[snippetStart:snippetEnd] + " ..."
python中有没有一种优雅的方式来动态调整snippetStart和snippetEnd?在许多情况下,上述方法显然抛出了一个例外,因为haystrack切片指数超出了范围。在
我在这里创建了一个带有注释的小例子。在
http://pythonfiddle.com/google-snippet
相关问题 更多 >
编程相关推荐