【发布时间】:2017-04-05 14:09:01
【问题描述】:
我正在使用 Cloudera 教程 here 练习 MapReduce。但是,目前本教程仅在 Java 中使用此正则表达式按空格分割单词:
private static final Pattern WORD_BOUNDARY = Pattern.compile("\\s*\\b\\s*");
但是,除了空格"\\s*"之外,我还想用逗号、句号(.)和制表符(\t)、括号()、方括号[]和花括号({})字符来定义单独的单词.换句话说,我将单词定义为一个字符串,该字符串具有一个或多个由两个非字母数字字符包围的字母数字字符。例如:
- (cece54) 有一个单词“cece54”,以
()为界 - {dwd] 有一个单词“dwd”,以
{]为界 - xxx) 有一个单词“xxx”,由
<space>和)绑定 - 以此类推。
那么我的正则表达式应该如何编写才能满足这个要求呢?
【问题讨论】:
标签: java regex string hadoop2 word-count