Substring w Pythonie
in
Sprawdza tylko czy podciąg znajduje się w przeszukiwanym tekscie (bez
podawania jego pozycji).
Zwraca True lub False.
if "er" in "qwerty":
print "znaleziono"
else:
print "nie znaleziono"
find, rfind
Podaje pozycję pierwszego(find) lub ostatniego(rfind) wystąpienia
podciągu w przeszukiwanym tekście.
Pozycja jest liczona od 0.
W razie nieznalezienia zwraca wartość mniejszą od zera (-1).
pozycja = "qwerty".find("er")
if pozycja >= 0 :
print "znalezione na pozycji:", pozycja
else:
print "nie znaleziono"
index, rindex
Podaje pozycję pierwszego(index) lub ostatniego(rindex) wystąpienia
podciągu w przeszukiwanym tekście.
Pozycja jest liczona od 0.
W razie nieznalezienia wywołuje wyjątek ValueError.
try:
pozycja = "qwerty".index("er")
print "znalezione na pozycji:", pozycja
except:
print "nie znaleziono"
startswith, endswith
(startswith = "starts with", endswith = "ends with")
Sprawdza czy podciąg znajduje się na początku(startswith) lub na
końcu(endswith) przeszukiwanego tekstu.
Zwraca True lub False.
if "qwerty".startswith("er"):
print "zaczyna się"
except:
print "nie zaczyna się"
Można sprawdzać kilka podciągów jednocześnie ale nie daje odpowiedzi, który konkretnie z podciągów spełnia warunek.
if "qwerty".startswith( ("er","we", "qw") ):
print "zaczyna się"
except:
print "nie zaczyna się "
partition
Znajduje podciąg w tekscie i zwraca znaleziony podciag oraz to co było przed nim i za num w przeszukiwanym tekscie.
wynik = "qwerty".partition("er")
# wynik = ("qw","er","ty")
wynik = "qwerty".partition("xx")
# wynik = ("qwerty","","")
przed,znalezione,po = "qwerty".partition("er")
# przed = "qw"
# znalezione = "er"
# po = "ty"
if znalezione == "":
print "nie znaleziono"
else:
print "znaleziono"
if przed == "":
print "znaleziono na początku"
if po == "":
print "znaleziono na końcu"
