如何根据 Spark Scala 中的特定分隔符分解字符串列

How to explode a string column based on specific delimiter in Spark Scala

我想根据特定的分隔符分解字符串列(在我的例子中是|) 我有这样的数据集:

+-----+--------------+
|Col_1|Col_2         |
+-----+--------------+
|  1  |  aa|bb       |
|  2  |  cc          |
|  3  |  dd|ee       |
|  4  |  ff          |
+-----+-----+---------

我想要这样的输出:

+-----+--------------+
|Col_1|Col_2         |
+-----+--------------+
|  1  |  aa          |
|  1  |  bb          |
|  2  |  cc          |
|  3  |  dd          |
|  3  |  ee          |
|  4  |  ff          |
+-----+-----+---------

使用explodesplit函数,并使用\\转义|.

val df1 = df.select(col("Col_1"), explode(split(col("Col_2"),"\|")).as("Col_2"))