如何在Pig latin中使用正则表达式进行过滤

时间:2013-05-15 06:45:10

标签: regex apache-pig

我必须找到一个名字,因为第一个字母是'P',最后一个字母是'l'。 在sql中,我们将它命名为'P %% l'。 在猪拉丁语命令中,如何给出它。

3 个答案:

答案 0 :(得分:2)

您可以使用带有正则表达式的FILTER命令,例如

X = FILTER A BY (name matches '\AP\w*l\b');

答案 1 :(得分:1)

Pig中正则表达式的格式是Java支持的格式 所以,在FILTER中使用匹配: result = FILTER输入BY名称匹配'^ P. * I $'

答案 2 :(得分:0)

与SQL的'%'相当的猪是'。*'

所以你可以使用

X = FILTER A BY (name matches 'P.*I');

参考:http://pig.apache.org/docs/r0.10.0/basic.html#comparison