我刚开始学习正则表达式和hadoop mapreduce。现在我正在尝试运行一个名为“grep”的hadoop mapreduce示例应用程序,并且我希望在文本输入文件中找到一系列词,如“and”,“是”,“是”。应用程序“grep”的输入参数之一是定义要查找的单词的正则表达式。假设我想要搜索以下词语:“和”“是”“是”。任何人都可以给我一个例子,说明如何设置正则表达式作为grep的输入参数?正则表达式查找某个字符串中的多个单词
谢谢。
我刚开始学习正则表达式和hadoop mapreduce。现在我正在尝试运行一个名为“grep”的hadoop mapreduce示例应用程序,并且我希望在文本输入文件中找到一系列词,如“and”,“是”,“是”。应用程序“grep”的输入参数之一是定义要查找的单词的正则表达式。假设我想要搜索以下词语:“和”“是”“是”。任何人都可以给我一个例子,说明如何设置正则表达式作为grep的输入参数?正则表达式查找某个字符串中的多个单词
谢谢。
你的正则表达式应该是:
“\ B(和|是| |的)\ B”
将作为您正则表达式的说法。
您可以在||之间放置更多单词。这是一个“或”。
“\ b”表示单词边界,没有\ b,您可以在另一个单词内匹配一个单词,例如:“害怕”而不是“are”,因为“are”包含在“scared”中。
采用grep
承认:
hadoop org.apache.examples.Grep <indir> <outdir> '(and)|(is)|(are)|(the)'
:
hadoop org.apache.examples.Grep <indir> <outdir> <regex>
所以,你可以用简单的东西作为出发