Curățarea Textelor cu Expresii Regulate: regexp_replace în Apache Spark & PySpark

functions Apache Spark 3.5 / PySpark Q&A / Distribuie cod

Manipularea șirurilor prin identificarea, curățarea și extragerea informațiilor pe baza tiparelor RegEx.

Sintaxă
F.regexp_replace(col, pattern, replacement) / F.regexp_extract(col, pattern, idx)

F.regexp_replace() înlocuiește toate aparițiile care corespund unei expresii regulate dintr-o coloană cu un alt șir specificat (fiind indispensabilă pentru eliminarea caracterelor speciale, a spațiilor multiple sau a formatărilor non-standard din numerele de telefon).

Pentru extragerea grupurilor specifice de captură dintr-un text (ex. extragerea domeniului dintr-un email sau a codului poștal dintr-o adresă), se folosește funcția parteneră F.regexp_extract().

Exemplu: Standardizarea numerelor de telefon și extragerea domeniului din email
from pyspark.sql import functions as F

# Păstrează doar cifrele din numărul de telefon, eliminând parantezele, spațiile și cratimele:
df_curat = df.withColumn(
    "telefon_cifre",
    F.regexp_replace(F.col("telefon"), r"[^0-9]", "")
).withColumn(
    "domeniu_email",
    F.regexp_extract(F.col("email"), r"@([A-Za-z0-9.-]+)", 1)
)

df_curat.select("telefon", "telefon_cifre", "email", "domeniu_email").show(5)

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Curățarea Textelor cu Expresii Regulate: regexp_replace

Ai o nelămurire despre utilizarea comenzii Curățarea Textelor cu Expresii Regulate: regexp_replace sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.