如何在PIG中分割字符'\'中的元组

时间:2015-09-30 22:29:51

标签: apache-pig strsplit

我开始学习PIG,我想在字符'\'中分割一个元组。 我原来的元组是

(192.168.2.227\al0000)

我需要将其拆分为'\'

(192.168.2.227, al0000)

我尝试使用

B =  FOREACH original GENERATE FLATTEN (STRSPLIT(tuple, '\\u034B'));

但它不起作用。什么是正确的解决方案?

2 个答案:

答案 0 :(得分:2)

输入:

192.168.2.227\al0000

猪脚本:

A = LOAD 'input.csv' as line;  
B = FOREACH A GENERATE FLATTEN (STRSPLIT(line, '([\\\\])'));
dump B; 

使用的第二个参数是用于标识'\'

的正则表达式

输出

(192.168.2.227,al0000)

参考

  1. http://pig.apache.org/docs/r0.14.0/func.html#strsplit
  2. Can't escape the backslash with regex?

答案 1 :(得分:0)

您是否尝试'\\\\'代替奇怪的unicode代码点u034B?