替换pig中的多个单词

pgccezyw  于 2021-06-21  发布在  Pig
关注(0)|答案(1)|浏览(382)

我对Pig不熟悉。在我正在编写的脚本中,我希望执行类似以下操作:

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

如果第一个模式匹配 `` 如果第二个模式匹配,则替换 def 被替换。但是我想语法是不正确的。有人能帮我学语法吗?

omtl5h9j

omtl5h9j1#

有几种方法可以做到这一点,但由于如果正则表达式与字符串不匹配,您只需将字符串取回,因此非常紧凑:

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

相关问题