Python Teilstring prüfen, finden und ersetzen: Die praktische Anleitung für sauberen Code
Wenn du in Python mit Text arbeitest, kommst du an Teilstrings nicht vorbei. Ich zeige dir, wie du sie sauber prüfst, findest und ersetzt – ohne unnötigen Ballast.
Python Teilstring prüfen, finden und ersetzen
Python Teilstring ist eines dieser Themen, die in fast jedem Projekt auftauchen. Egal ob ich Logs analysiere, Benutzereingaben prüfe oder Daten bereinige: Ich muss oft erkennen, ob ein Text eine bestimmte Zeichenfolge enthält. Die gute Nachricht: Python macht das leicht. Die bessere Nachricht: Wenn du die richtigen Methoden kennst, sparst du Zeit, Fehler und unnötigen Code.
Was ist ein Python Teilstring?
Ein Teilstring ist einfach ein Textstück innerhalb eines anderen Strings. Beispiel: In "Python ist stark" ist "Python" ein Teilstring. Klingt banal. Ist aber extrem wichtig, weil fast jede Textlogik genau darauf aufbaut.
Ich nutze Teilstrings für:
- Prüfen, ob ein Wort in einem Text vorkommt
- Positionen in Strings finden
- Texte ersetzen oder bereinigen
- Daten aus E-Mails, URLs oder Logs extrahieren
Python Teilstring prüfen: Die einfachste Methode
Wenn ich nur wissen will, ob ein Teilstring vorkommt, nutze ich meistens in. Das ist die sauberste und lesbarste Lösung.
text = "Python ist stark"
if "stark" in text:
print("Gefunden")
Das ist schnell, klar und in 90 Prozent der Fälle genau richtig. Wenn du nur eine Ja-Nein-Antwort brauchst, nimm diese Variante.
Wichtig: in ist case-sensitive. "python" in "Python ist stark" liefert also False.
Python Teilstring case-insensitive prüfen
Wenn ich Groß- und Kleinschreibung ignorieren will, konvertiere ich beide Strings in dieselbe Schreibweise. Meistens nehme ich lower() oder casefold().
text = "Python ist Stark"
if "stark" in text.lower():
print("Gefunden")
Mein Tipp: Für normale Vergleiche reicht lower(). Für internationale Texte ist casefold() oft robuster.
text = "Straße"
needle = "strasse"
if needle.casefold() in text.casefold():
print("Gefunden")
Mehr dazu findest du direkt in der offiziellen Doku: Python casefold().
Python Teilstring Position finden
Wenn ich wissen will, wo ein Teilstring steht, nehme ich find() oder index().
text = "Python ist stark"
position = text.find("ist")
print(position) # 7
find() gibt die Position zurück. Wenn der Teilstring nicht gefunden wird, kommt -1 zurück. Das ist praktisch, weil ich damit direkt arbeiten kann.
index() macht fast das Gleiche, wirft aber einen Fehler, wenn nichts gefunden wird.
text = "Python ist stark"
position = text.index("ist")
print(position) # 7
Ich nutze meistens find(), weil es flexibler ist. Wenn ich einen Fehler bewusst will, nehme ich index().
Offizielle Referenz: Python str.find()
Python Teilstring ersetzen
Wenn ich einen Teilstring austauschen will, nutze ich replace(). Das ist simpel und stark genug für die meisten Aufgaben.
text = "Python ist stark"
neu = text.replace("stark", "schnell")
print(neu) # Python ist schnell
Standardmäßig ersetzt replace() alle Vorkommen. Wenn ich nur das erste ersetzen will, setze ich den dritten Parameter.
text = "rot, rot, blau"
neu = text.replace("rot", "grün", 1)
print(neu) # grün, rot, blau
Praktisch: Strings sind in Python unveränderlich. replace() ändert den Original-String nicht, sondern gibt einen neuen zurück.
Python Teilstring mit Regex: Wann ich es nutze
Wenn die Suche komplex wird, gehe ich auf re. Nicht für jede Kleinigkeit. Nur wenn ich Muster brauche. Regex ist mächtig, aber auch ein schneller Weg zu unnötiger Komplexität, wenn man es übertreibt.
import re
text = "Bestellung #12345 wurde versendet"
match = re.search(r"#\d+", text)
if match:
print(match.group())
Regex nutze ich bei:
- Zahlenmustern
- E-Mail-Adressen
- URLs
- variablen Textformaten
Wenn du tiefer einsteigen willst, ist die offizielle Doku hier: Python re-Modul.
Die typischen Fehler bei Python Teilstring
Ich sehe immer wieder dieselben Fehler. Wenn du sie vermeidest, bist du sofort besser als der Durchschnitt.
- Groß-/Kleinschreibung vergessen:
"python"ist nicht gleich"Python". - Falsche Methode wählen: Für eine einfache Prüfung brauchst du kein Regex.
- Fehlende Rückgabewerte prüfen:
find()gibt-1zurück, nichtNone. - Original-String nicht ändern: Methoden wie
replace()liefern neue Strings.
So entscheide ich mich schnell für die richtige Methode
Ich halte es einfach:
- Nur prüfen, ob vorhanden:
in - Position finden:
find() - Fehler bei Nicht-Fund gewollt:
index() - Ersetzen:
replace() - Komplexe Muster:
re
Das ist meine Standardlogik. Schnell entscheiden. Einfach umsetzen. Kein Overengineering.
Praxisbeispiel: Python Teilstring in echten Daten nutzen
Nehmen wir an, ich habe eine Liste mit E-Mail-Betreffzeilen und will nur die Nachrichten mit dem Wort dringend filtern.
betreffzeilen = [
"Dringend: Rechnung offen",
"Meeting morgen",
"Bitte dringend prüfen"
]
for betreff in betreffzeilen:
if "dringend" in betreff.lower():
print(betreff)
Das ist ein typischer Anwendungsfall. Kein Drama. Kein Framework. Nur saubere String-Logik.
Fazit: Python Teilstring einfach richtig nutzen
Wenn ich mit Python Teilstring arbeite, halte ich mich an eine klare Reihenfolge: erst in, dann find(), dann replace(), und nur bei Bedarf Regex. So bleibt mein Code lesbar, schnell und robust. Genau das willst du in echten Projekten.
Python Teilstring ist kein Spezialthema. Es ist Basiswissen, das du ständig brauchst. Wenn du diese Methoden beherrschst, arbeitest du in Python deutlich sauberer und schneller.
}]}Weitere Beiträge
Spam-Mail in Gmail: Sicher Durch diese Tipps
vor 1 Jahr