Bei der Arbeit mit Textdaten in der Programmierung ist es häufig erforderlich, das Vorhandensein oder Fehlen bestimmter Zeichen in Zeichenfolgen festzustellen . Dies ist besonders nützlich für Aufgaben wie Datenvalidierung, Mustervergleich und Textanalyse. In diesem Artikel werden wir verschiedene Methoden untersuchen, um mit Python 2 nach bestimmten Zeichen in einer Zeichenfolge zu suchen.
Die prägnanteste Möglichkeit, nach einem bestimmten Zeichen in einer Zeichenfolge zu suchen In Python 2 erfolgt dies über den in-Operator. Dieser Operator gibt „True“ zurück, wenn das Zeichen in der Zeichenfolge gefunden wird, andernfalls „False“. Um beispielsweise zu überprüfen, ob eine Zeichenfolge das Dollarzeichen ($) enthält:
string = "The criminals stole $1,000,000 in jewels."
if '$' in string:
# Found the dollar sign
else:
# Didn't find the dollar sign
Um auf mehrere bestimmte Zeichen zu prüfen, besteht ein einfacher Ansatz darin, die Methode find() zu verwenden. Diese Methode gibt den Index des ersten Vorkommens des Zeichens in der Zeichenfolge zurück. Wenn das Zeichen nicht gefunden wird, wird -1 zurückgegeben. Indem wir prüfen, ob der zurückgegebene Index nicht -1 ist, können wir feststellen, ob das Zeichen in der Zeichenfolge vorhanden ist:
if string.find('$') != -1:
# Found the dollar sign
else:
# Didn't find the dollar sign
Reguläre Ausdrücke bieten eine robustere und vielseitigere Möglichkeit, Zeichen in Zeichenfolgen abzugleichen. Um die bereitgestellte Zeichenfolge auf Dollarzeichen, Kommas und Zahlen zu prüfen, können wir den folgenden regulären Ausdruck verwenden:
import re
pattern = re.compile(r'\d\$,')
if pattern.findall(string):
# Found the characters
else:
# Didn't find the characters
Der obige reguläre Ausdruck entspricht einer beliebigen Ziffer (\d), gefolgt von einem Dollarzeichen (\$) und einem Komma (,).
Eine weitere effiziente Methode ist die Verwendung einer Reihe von Zeichen. Mengen in Python 2 sind ungeordnete Sammlungen eindeutiger Elemente. Wir können einen Satz der Zielzeichen erstellen und über die Eingabezeichenfolge iterieren und prüfen, ob jedes Zeichen zum Satz gehört. Wenn ein Zeichen übereinstimmt, zeigt dies das Vorhandensein der Zielzeichen an:
import string # Contains the string module
chars = set('0123456789$,')
if any((c in chars) for c in string):
# Found the characters
else:
# Didn't find the characters
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3