我想知道是否有一些基于 Java 的语言实用程序可以帮助执行以下字符串标记化或分词和消除噪音
所以对于一个字符串
Friday's meeting is wonderful
预期结果将是一系列单词
Friday meeting wonderful
和被删除的地方
对于字符串
I went to the farmer's market
预期结果将是单词
went farmer market
I, to, the, and 被删除的地方
我想知道是否有一些基于 Java 的语言实用程序可以帮助执行以下字符串标记化或分词和消除噪音
所以对于一个字符串
Friday's meeting is wonderful
预期结果将是一系列单词
Friday meeting wonderful
和被删除的地方
对于字符串
I went to the farmer's market
预期结果将是单词
went farmer market
I, to, the, and 被删除的地方
这个问题没有通用的解决方案,因为(尤其是)你对“噪音”的概念定义不明确......而且很可能与其他人不同。
如果我正在实施这个(并且我同意你的“噪音”概念),我会:
简而言之,您将不得不编写大量代码来执行此操作。
当然,剥离“噪音”词是剥离与文本的适当语义分析相关的信息。(“我击球”和“你击球”说的是不同的东西。)
也许看看这个?我也知道有一个 String Tokenizer 类,但这可能很难用于您的目的。
http://docs.oracle.com/javase/7/docs/api/java/text/Normalizer.html
我不知道有什么实用程序可以开箱即用,但可能会看看这个 -从 java 中的另一个字符串中删除字符串。希望这有点帮助。
可能这不是最好的解决方案,但您可以使用 String 类的 replaceAll 方法,替换空字符串的噪音。
例如,类似:line.replaceAll("'s", "");