如何在Pig中创建不区分大小写的匹配?

ora*_*ge1 4 regex apache-pig

假设我有以下文件,学生

John
Mary
Bill
Joe
Run Code Online (Sandbox Code Playgroud)

然后我加载我的数据如下:

a = load 'student' as (name:chararray);
Run Code Online (Sandbox Code Playgroud)

我希望b的结果不区分大小写:

b = filter a by name matches ('.*john.*');
Run Code Online (Sandbox Code Playgroud)

也就是说,返回一场比赛,(约翰).我已经尝试使用正则表达式设置'?i.*john.*',但这似乎不起作用.

Siv*_*man 5

原因是你忘了关闭不区分大小写部分的支架.正确的语法是'(?i).*john.*'

你能试试这个过滤器吗?

b = filter a by name matches '(?i).*john.*';
Run Code Online (Sandbox Code Playgroud)