--including the js file containing the UDF
register 'test.js' using javascript as myfuncs;
a = LOAD '/file' as (line1:chararray);
--Processing each line1 by calling UDF
b = FOREACH x generate myfuncs.processData(line1);
dump b;
测试.js
processData.outputSchema = "word:chararray,num:long";
function processData(word){
return {word:word, num:word.length};
}
3条答案
按热度按时间n7taea2i1#
更多信息:如果您想将数据转换成一种更复杂的形式,而这种形式不能简单地通过replace来实现,那么您可以创建一个javascript/java/jython/ruby/groovy/python用户定义函数(udf),它将您的数据作为输入并返回处理过的数据。
javascript自定义项示例:
Pig脚本:
测试.js
要了解自定义项是如何工作的,请检查以下内容:自定义项的pig文档
iklwldmw2#
|
以及{
以及}
是正则表达式中的特殊字符,是REPLACE
是正则表达式。尝试转义字符:htzpubme3#
您可以使用regex\u extract:
http://pig.apache.org/docs/r0.12.1/func.html#regex-提取