我是猪的新手。在我写的脚本中,我想执行类似于此的操作:
foreach X GENERATE REPLACE(word,'.*abc.*','abc') OR REPLACE(word,'.*def.*','def').
如果第一个模式匹配,则替换abc
,否则如果匹配第二个模式,则替换def
。但我认为语法不正确。有人可以帮我解释语法吗?
答案 0 :(得分:1)
有几种方法可以做到这一点,但是因为如果正则表达式与字符串不匹配,你只需返回字符串,这非常紧凑:
Y = FOREACH X GENERATE REPLACE(REPLACE(word, '.*abc.*', 'abc'), '.*def.*', 'def');