Вы можете проверить это.
import re
# Part-1. Check for substring existence
s1= str(input("String>\t\t"))
s2 = str(input("Substring>\t"))
print("Is substring present in string?\t-",s2.replace(" ", "") in s1.replace(" ", ""))
# Part-2. Search for exact pattern and indices in original string
s2 = s2.replace(" ", "")
s2 = re.compile(" *".join(s2)) #Define the pattern of the substring here
if(s2.search(s1)): #Search for defined pattern in original string
print((s2.search(s1)).start(), (s2.search(s1)).end())
«*» - шаблон для поиска после любого символа, любого количества пробелов, где * является подходящим квантификатором. Извините, я пытаюсь привыкнуть к вводу данных во время выполнения и пытаюсь неуклюже свести к минимуму использование переменных, но это прекрасно работает.
For Each I As Item In Items
If I = x Then Continue For
' Do something
Next
Как насчет:
If Not I = x Then
' Do something '
End If
' Move to next item '
Я бы вместо этого использовал оператор Continue
:
For Each I As Item In Items
If I = x Then
Continue For
End If
' Do something
Next
Обратите внимание, что это немного отличается от перемещения самого итератора - чего-нибудь до If
будет выполнен снова. Обычно это то, что вам нужно, но если нет, вам придется явно использовать GetEnumerator ()
, а затем MoveNext ()
/ Current
вместо использования Для каждого цикла
.
Я хочу пояснить, что следующий код не является хорошей практикой. Вы можете использовать GOTO Label:
For Each I As Item In Items
If I = x Then
'Move to next item
GOTO Label1
End If
' Do something
Label1:
Next