Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich mithilfe regulärer Ausdrücke in Python Gleitkommazahlen aus einer Zeichenfolge extrahieren?
Gleitkommazahlen aus einer Zeichenfolge mithilfe regulärer Ausdrücke extrahieren
Bei der Programmierung ist es häufig erforderlich, Daten aus Textzeichenfolgen zu extrahieren. In diesem Fall möchten Sie Gleitkommazahlen aus einer Zeichenfolge wie „Aktueller Pegel: 13,4 dB“ extrahieren.
Lösung für reguläre Ausdrücke
Verwendung regulärer Ausdrücke können Sie ein Muster definieren, das Gleitkommazahlen erfasst. Betrachten Sie den folgenden Python-Code:
import re string = "Current Level: 13.4db." result = re.findall(r"\d+\.\d+", string) print(result)
Dieser Code verwendet das reguläre Ausdrucksmuster d .d :
Die Ergebnisliste enthält die extrahierte Gleitkommazahl: ['13.4'].
Robuste Lösung mit Validierung
Für einen robusteren Ansatz verwenden Sie das Muster r"[- ]?(?:d*.*d )". Dieses Muster verarbeitet sowohl positive als auch negative Vorzeichen sowie optionale Ziffern vor dem Dezimalpunkt.
result = re.findall(r"[-+]?(?:\d*\.*\d+)", string) print(result)
Zusätzlich zur Extraktion können Sie Benutzereingaben validieren, indem Sie versuchen, sie direkt in eine Gleitkommazahl umzuwandeln:
user_input = "Current Level: 1e100 db" for token in user_input.split(): try: float_value = float(token) print(f"{float_value} is a float") except ValueError: print(f"{token} is something else")
Dieser Code durchläuft die Token in der Eingabezeichenfolge und versucht, sie in Floats umzuwandeln. Wenn eine Konvertierung erfolgreich ist, ist der Token ein Float. Ansonsten wird es als etwas anderes betrachtet.
Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe regulärer Ausdrücke in Python Gleitkommazahlen aus einer Zeichenfolge extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!