0

看到一个奇怪的问题string.find

我有以下列表:

lstofpro = ["Brown, John", "Smith,Jon"]
keywordstring = "Something: Smith,Jon Account Number: 99999"

for p in lstofpro:
    if keywordstring.find(p.strip()) != -1:
        print ("Found a match for : %s" % p)

即使值存在于keyworstring. 如果我更改p.strip()为“Smith,Jon”的硬编码值,它会成功找到它。

伙计们有什么线索可能是错的吗?

4

1 回答 1

1

您是否有理由不能使用“in”运算符?我像这样尝试了你的算法并得到了预期的结果:

lstofpro = ["Brown, John", "Smith,Jon"]
keywordstring = "Something: Smith,Jon Account Number: 99999"

for p in lstofpro:
   if p in keywordstring:
      print ("Found a match for : %s" % p)
于 2013-02-18T21:43:41.517 回答