替换猪中的多个单词

时间:2014-03-03 00:28:23

标签: replace apache-pig

我是猪的新手。在我写的脚本中,我想执行类似于此的操作:

foreach X GENERATE REPLACE(word,'.*abc.*','abc') OR REPLACE(word,'.*def.*','def'). 

如果第一个模式匹配,则替换abc,否则如果匹配第二个模式,则替换def。但我认为语法不正确。有人可以帮我解释语法吗?

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点,但是因为如果正则表达式与字符串不匹配,你只需返回字符串,这非常紧凑:

Y = FOREACH X GENERATE REPLACE(REPLACE(word, '.*abc.*', 'abc'), '.*def.*', 'def');