指定されたパターンの一致を中心に str を分割します。
対応する Databricks SQL 関数については、 split 関数を参照してください。
構文
from pyspark.databricks.sql import functions as dbf
dbf.split(str=<str>, pattern=<pattern>, limit=<limit>)
パラメーター
| パラメーター | タイプ | Description |
|---|---|---|
str |
pyspark.sql.Column または str |
分割する文字列式 |
pattern |
pyspark.sql.Column または literal string |
正規表現を表す文字列。 正規表現文字列は Java 正規表現である必要があります。 は、下位互換性のために正規表現表現として受け入れられます。 int に加えて、 limit は列と列名を受け入れるようになりました。 |
limit |
pyspark.sql.Column または str または int |
patternが適用される回数を制御する整数。 _ limit > 0: 結果の配列の長さは limitを超える値ではなく、結果の配列の最後のエントリには、最後に一致したパターンを超えるすべての入力が含まれます。 _ limit <= 0: pattern は可能な限り何度も適用され、結果の配列は任意のサイズにすることができます。 |
返品ポリシー
pyspark.sql.Column: 区切られた文字列の配列。
例示
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()