我在尝试在Python中查找子字符串时遇到了奇怪的情况。我知道我应该使用in
运算符。
我的字符串看起来像'(email@email.org,Name,ext)'。
当我在交互式终端中运行时,它开始不匹配:
>>> '(foo@bar.org,' in a
True
>>> '(foo@bar.org, B' in a
False
我的字符串与我提供的文字中的模式完全相同。我只是好奇为什么in
一旦通过第一个逗号就不起作用了?
a是:
Purpose: foo - bar\n\n Server Admin: (baz@bar.org, a f. g, 6-6405) \n\n App Owner Group: hi\n\n App Owners: (blah, blah blah, 6-5627)\n (foo@bar.org, Brian Cody, 6-5624)\n\nNotes for Alerts:\n
答案 0 :(得分:3)
如果实际包含'foo@bar.org, B'
:
>>> a = '(foo@bar.org, Bob, x1234)'
>>> 'foo@bar.org,' in a
True
>>> 'foo@bar.org, B' in a
True
>>>
答案 1 :(得分:0)
您提供的字符串实际上在(foo@bar.org,
和Brian Cody
之间有两个空格。因此,您的第二个表达式将返回False
,因为它正在寻找一个且只有一个空格。