VB.NET - Как переместиться в следующий объект Для Каждого Цикла?

Вы можете проверить это.

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())

«*» - шаблон для поиска после любого символа, любого количества пробелов, где * является подходящим квантификатором. Извините, я пытаюсь привыкнуть к вводу данных во время выполнения и пытаюсь неуклюже свести к минимуму использование переменных, но это прекрасно работает.

88
задан nalply 22 August 2012 в 07:14
поделиться

4 ответа

For Each I As Item In Items
    If I = x Then Continue For

    ' Do something
Next
171
ответ дан 24 November 2019 в 07:28
поделиться

Как насчет:

If Not I = x Then

  ' Do something '

End If

' Move to next item '
3
ответ дан 24 November 2019 в 07:28
поделиться

Я бы вместо этого использовал оператор Continue :

For Each I As Item In Items

    If I = x Then
        Continue For
    End If

    ' Do something

Next

Обратите внимание, что это немного отличается от перемещения самого итератора - чего-нибудь до If будет выполнен снова. Обычно это то, что вам нужно, но если нет, вам придется явно использовать GetEnumerator () , а затем MoveNext () / Current вместо использования Для каждого цикла .

46
ответ дан 24 November 2019 в 07:28
поделиться

Я хочу пояснить, что следующий код не является хорошей практикой. Вы можете использовать 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
2
ответ дан 24 November 2019 в 07:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: