我想在Python中找到一个单词的出现并在这个单词之后打印出单词。这些词是空格分开的。
示例:
如果出现单词" sample" " thisword"在一个文件中。我想得到这个词。我想要一个正则表达式,因为这个词不断改变。
答案 0 :(得分:12)
python字符串有一个内置方法split,它将字符串拆分为由空格字符(doc)分隔的单词列表,它有控制分割单词的方式的参数,然后你可以搜索列出您想要的单词并返回下一个索引
your_string = "This is a string"
list_of_words = your_string.split()
next_word = list_of_words[list_of_words.index(your_search_word) + 1]
答案 1 :(得分:1)
听起来你想要一个功能。
>>> s = "This is a sentence"
>>> sl = s.split()
>>>
>>> def nextword(target, source):
... for i, w in enumerate(source):
... if w == target:
... return source[i+1]
...
>>> nextword('is', sl)
'a'
>>> nextword('a', sl)
'sentence'
>>>
当然,你会想要做一些错误检查(例如,你不会失败),也许是一个while循环,所以你得到了目标的所有实例。但这应该让你开始。
答案 2 :(得分:0)
一种非常简单的方法:
s = "this is a sentense"
target = "is"
words = s.split()
for i,w in enumerate(words):
if w == target:
# next word
print words[i+1]
# previous word
if i>0:
print words[i-1]