The statement one or two will return one if defined, and two if one is not truthy, and I don't see a reason it wouldn't work with your logic because if either is truthy, and is contained in string, it will evaluate to True
>>> a = "6"
>>> b = ":"
>>> (a or b)
'6'
>>> (b or a)
':'
>>> a = None
>>> (a or b)
':'
>>> b
':'
For more than 2 variables it will return the first that's truthy
>>> a = None
>>> b = None
>>> c = 6
>>> a or b or c
6
But note your logic, you want to check if any of the variables is in that string, you can't use this, because the c1 ca be equal to "example" and that's what's gonna be returned to that if statement and it's not in ":6"