Heim > Backend-Entwicklung > Python-Tutorial > Wie verwende ich reguläre Ausdrücke, um Float-/Double-Werte in Python zu extrahieren?

Wie verwende ich reguläre Ausdrücke, um Float-/Double-Werte in Python zu extrahieren?

Linda Hamilton
Freigeben: 2024-10-21 12:05:02
Original
931 Leute haben es durchsucht

How to Use Regular Expressions to Extract Float/Double Values in Python?

Gleitkomma-/Double-Werte mit regulären Ausdrücken extrahieren

In Python können Sie reguläre Ausdrücke verwenden, um Gleitkomma- oder Double-Werte aus Zeichenfolgen zu extrahieren . Lassen Sie uns einen leistungsstarken regulären Ausdruck aus Perl erkunden:

(?x)
^
  [+-]?\ *      # Optional sign followed by optional whitespace
  (             # Match integers or floating-point mantissas
      \d+       # Whole numbers
      (
          \.\d* # Mantissa with decimal point (a.b or a.)
      )?        # Optional decimal point
     |\.\d+     # Mantissa without leading whole number (.b)
  )
  ([eE][+-]?\d+)?  # Optional exponent
$
Nach dem Login kopieren

Zum Beispiel, um einen doppelten Wert aus einer Zeichenfolge zu extrahieren:

<code class="python">import re

# Create a regular expression pattern
re_float = re.compile(above_regexp)

# Match the pattern against a string
match = re_float.match("4.5")

# Extract the matched value
double_value = match.group(0)

print(double_value)  # Output: 4.5</code>
Nach dem Login kopieren

Um mehrere numerische Werte aus einer größeren Zeichenfolge zu extrahieren, müssen Sie kann die findall()-Methode verwenden:

<code class="python">s = """4.5 abc -4.5 abc - 4.5 abc + .1e10 abc . abc 1.01e-2 abc 
       1.01e-.2 abc 123 abc .123"""

numeric_values = re.findall(r"[+-]? *(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?", s)

print(numeric_values)  # Output: ['4.5', '-4.5', '- 4.5', '+ .1e10', ' 1.01e-2', '       1.01', '-.2', ' 123', ' .123']</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie verwende ich reguläre Ausdrücke, um Float-/Double-Werte in Python zu extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage