java - 删除所有非字母数字字符,但允许使用多字词
问题描述
对于 MapReduce 工作,我正在尝试删除所有非字母数字字符,如果它不是首字母缩写词,则停止标记并将其小写,但我想允许像“改变生活”这样的多词术语。这是我到目前为止所做的,我应该如何改变它?
String line = value.toString();
StringTokenizer itr = new StringTokenizer(line);
while (itr.hasMoreTokens())
{
String token = stem(caseFold(itr.nextToken()));
token=token.replaceAll("^[^a-zA-Z0-9]*|[^a-zA-Z0-9]*$", "");
....
}
解决方案
您可以使用公开可用的字典 API,例如 dictionaryapi.com
推荐阅读
- java - How to read data from SQLiteOpenHelper to textview?
- javascript - 按年份分组日期数组
- flutter - Flutter 将一个值与两个字符串进行比较
- wordpress - 如何为手机创建响应式页脚
- java - 在 gradle 中生成 Spring Boot 项目结构的标准工具
- javascript - 带有轨道 fitbounds 的传单 featureGroup 无效
- angularjs - CSS AngularJS 到 Vuetify
- python - pytorch 没有出现在 jupyter notebook 的内核中
- javascript - 使用fabric js加载和保存画布数据
- minikube - minikube 服务无法公开 URL