Condividi tramite


diviso

Suddivide str sulla base delle corrispondenze del modello specificato.

Per la funzione SQL di Databricks corrispondente, vedere split funzione.

Sintassi

from pyspark.databricks.sql import functions as dbf

dbf.split(str=<str>, pattern=<pattern>, limit=<limit>)

Parametri

Parametro TIPO Description
str pyspark.sql.Column o str un'espressione stringa da dividere
pattern pyspark.sql.Column o literal string stringa che rappresenta un'espressione regolare. La stringa regex deve essere un'espressione regolare Java. accettata come rappresentazione di espressione regolare, per compatibilità con le versioni precedenti. Oltre a int, limit ora accetta il nome di colonna e colonna.
limit pyspark.sql.Column o str o int intero che controlla il numero di volte pattern in cui viene applicato. _ limit > 0: la lunghezza della matrice risultante non sarà maggiore di limite l'ultima voce della matrice risultante conterrà tutti gli input oltre l'ultimo modello corrispondente. _ limit <= 0: pattern verrà applicato il maggior numero possibile di volte e la matrice risultante può essere di qualsiasi dimensione.

Restituzioni

pyspark.sql.Column: matrice di stringhe separate.

Esempi

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('oneAtwoBthreeC',)], ['s',])
df.select('*', dbf.split(df.s, '[ABC]')).show()
df.select('*', dbf.split(df.s, '[ABC]', 2)).show()
df.select('*', dbf.split('s', '[ABC]', -2)).show()
df = spark.createDataFrame([
('oneAtwoBthreeC', '[ABC]', 2),
('1A2B3C', '[1-9]+', 1),
('aa2bb3cc4', '[1-9]+', -1)], ['s', 'p', 'l'])
df.select('*', dbf.split(df.s, df.p)).show()
df.select(dbf.split('s', df.p, 'l')).show()