Check To Ensure A String Does Not Contain Multiple Values
**Note- I will not just be testing at the end of a string-- need to locate particular substrings anywhere in the string What is the fastest way to check to make sure a string does
Solution 1:
Try:
ifnotany(extension instringfor extension in ('jpg', 'png', 'gif')):
which is basically the same as your code, but more elegantly written.
Solution 2:
if you're testing just the end of the string, remember that str.endswith can accept a tuple.
>>> "test.png".endswith(('jpg', 'png', 'gif'))
True
otherwise:
>>>import re>>>re.compile('jpg|png|gif').search('testpng.txt')
<_sre.SRE_Match object at 0xb74a46e8>
>>>re.compile('jpg|png|gif').search('testpg.txt')
Solution 3:
You could also do something like this if the values to test for didn't need to be managed by a tuple/list.
>>> ('png'or'jpg'or'foo') in'testpng.txt'True>>> ('png'or'jpg'or'foo') in'testpg.txt'False
EDIT I see the error of my ways now, it only checks the first.
>>> ('bees'or'png'or'jpg'or'foo') in'testpng.txt'False
Post a Comment for "Check To Ensure A String Does Not Contain Multiple Values"