测试子字符串的字符串

Nat*_*ate 119 python string

有没有一种简单的方法来测试Python字符串"xxxxABCDyyyy"以查看其中是否包含"ABCD"?

Sve*_*ach 210

if "ABCD" in "xxxxABCDyyyy":
    # whatever
Run Code Online (Sandbox Code Playgroud)

  • 这可以在这里工作,但如果您正在测试非字符串,则可能无法给出预期的结果.例如,如果针对字符串列表进行测试(可能在["xxxxabcdyyyy"]中使用`if"ABCD"),则可能会无声地失败. (5认同)
  • @GreenMatt,如果你知道这是一个列表,只要在列表[0]中说'if'ABCD'. (2认同)

kur*_*umi 34

除了使用"in"运算符(最简单)之外,还有其他几种方法:

in

>>> try:
...   "xxxxABCDyyyy".index("test")
... except ValueError:
...   print "not found"
... else:
...   print "found"
...
not found
Run Code Online (Sandbox Code Playgroud)

index()

>>> if "xxxxABCDyyyy".find("ABCD") != -1:
...   print "found"
...
found
Run Code Online (Sandbox Code Playgroud)

find()

>>> import re
>>> if re.search("ABCD" , "xxxxABCDyyyy"):
...  print "found"
...
found
Run Code Online (Sandbox Code Playgroud)

  • 最后一个需要和`re.escape`调用一般情况下. (4认同)