a = load '/text.log' using TextLoader() as line:chararray;
b = foreach a generate REGEX_EXTRACT_ALL(line,'projectVersion:[^\t]*');
c = group b by $0;
d = foreach c generate group, COUNT(b);
dump d;
以上是我的脚本,我的示例数据有点像..
projectName:test logType:test logSource:test logBody:test
我得到了这个结果
(,0)
我查看了 Pig API,它说如果模式不匹配,REGEX_EXTRACT_ALL 将返回空元组,但显然存在该模式。所以我尝试了更简单的任务..
b = foreach a generate REGEX_EXTRACT_ALL(line,'projectVersion');
也试过
b = foreach a generate REGEX_EXTRACT_ALL(line,'p');
一次又一次我得到空的结果。
我不知道为什么这个简单的事情不起作用,我做错了什么吗?