我剛開始學習正則表達式和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>
所以,你可以用簡單的東西作爲出發