Teilen über


url_decode

Decodiert eine URL-codierte Zeichenfolge im Format "application/x-www-form-urlencoded" in das ursprüngliche Format.

Syntax

from pyspark.sql import functions as sf

sf.url_decode(str)

Die Parameter

Parameter Typ Description
str pyspark.sql.Column oder str Eine Spalte mit Zeichenfolgen, die jeweils eine URL-codierte Zeichenfolge darstellt.

Rückkehr

pyspark.sql.Column: Eine neue Spalte mit Zeichenfolgen, die jeweils die decodierte Zeichenfolge darstellt.

Examples

Beispiel 1: Decodieren einer URL-codierten Zeichenfolge

from pyspark.sql import functions as sf
df = spark.createDataFrame([("https%3A%2F%2Fspark.apache.org",)], ["url"])
df.select(sf.url_decode(df.url)).show(truncate=False)
+------------------------+
|url_decode(url)         |
+------------------------+
|https://spark.apache.org|
+------------------------+

Beispiel 2: Decodieren einer URL-codierten Zeichenfolge mit Leerzeichen

from pyspark.sql import functions as sf
df = spark.createDataFrame([("Hello%20World%21",)], ["url"])
df.select(sf.url_decode(df.url)).show()
+---------------+
|url_decode(url)|
+---------------+
|   Hello World!|
+---------------+

Beispiel 3: Decodieren einer URL-codierten Zeichenfolge mit Sonderzeichen

from pyspark.sql import functions as sf
df = spark.createDataFrame([("A%2BB%3D%3D",)], ["url"])
df.select(sf.url_decode(df.url)).show()
+---------------+
|url_decode(url)|
+---------------+
|          A+B==|
+---------------+

Beispiel 4: Decodieren einer URL-codierten Zeichenfolge mit Nicht-ASCII-Zeichen

from pyspark.sql import functions as sf
df = spark.createDataFrame([("%E4%BD%A0%E5%A5%BD",)], ["url"])
df.select(sf.url_decode(df.url)).show()
+---------------+
|url_decode(url)|
+---------------+
|           你好|
+---------------+

Beispiel 5: Decodieren einer URL-codierten Zeichenfolge mit Hexadezimalwerten

from pyspark.sql import functions as sf
df = spark.createDataFrame([("%7E%21%40%23%24%25%5E%26%2A%28%29%5F%2B",)], ["url"])
df.select(sf.url_decode(df.url)).show()
+---------------+
|url_decode(url)|
+---------------+
|  ~!@#$%^&*()_+|
+---------------+