我想将数据集中由反斜杠(/(连接的字符串拆分为新行。
示例数据集为:
(David Jones / John Smith)
我希望结果是:
(David Jones)
(John Smith)
我写的代码是:
A = FOREACH data GENERATE FLATTEN(STRSPLIT(name,'/',2));
DUMP A;
然而,我在终端得到的结果是:
(David Jones, John Smith)
STRSPLIT
在同一行中创建一个元组。压扁它会把它压扁。
我建议在没有压平的情况下尝试
您应该使用TOKENIZE
而不是STRSPLIT
代码:
A = LOAD 'input.txt' AS (name:chararray);
B = FOREACH A GENERATE FLATTEN(TOKENIZE(name,'/'));
DUMP B;
input.txt
:的内容
David Jones/John Smith
输出:
(David Jones)
(John Smith)