Python中的字符串搜索和比较

时间:2013-08-21 14:06:31

标签: python string matching

我试图使用Python在两个字符串集中找到匹配的单词。例如string:

a = "Hello Mars"
b = "Venus Hello"

如果字符串a中的第一个单词等于字符串b中的第二个单词,我想返回true / false。

我可以做这样的事吗?

if a.[1:] == b.[:] return true else false

1 个答案:

答案 0 :(得分:2)

使用str.splitstr.rsplit拆分字符串,然后匹配第一个和最后一个字:

>>> a = "Hello Mars"
>>> b = "Venus Hello"
#This compares first word from `a` and last word from `b`.
>>> a.split(None, 1)[0] == b.rsplit(None, 1)[-1]
True

如果您只想比较第一个和第二个字,请仅使用str.split

>>> a.split()
['Hello', 'Mars']
>>> b.split()
['Venus', 'Hello']
#This compares first word from `a` and second word from `b`.
>>> a.split()[0] == b.split()[1]
True

str.splitstr.rsplit返回的内容:

>>> a = "Hello Jupiter Mars"
>>> b = "Venus Earth Hello" 
>>> a.split(None, 1)         #split the string only at the first whitespace
['Hello', 'Jupiter Mars']
>>> b.rsplit(None, 1)        #split the string only at the last whitespace
['Venus Earth', 'Hello']