我正在用Java开发自然语言处理应用程序,正在使用IMDB和Amazon的数据。
我遇到了某个数据集,其中包含类似的单词partyyyyy
。这些单词对我的分类算法不利。因此,我想删除它们并添加party
而不是partyyyyyyy
。
我怎样才能做到这一点?
您可以使用此代码段的快速实现。
public static String removeConsecutiveChars(String str) {
if (str == null) {
return null;
}
int strLen = str.length();
if (strLen <= 1) {
return str;
}
char[] strChar = str.toCharArray();
char temp = strChar[0];
StringBuilder stringBuilder = new StringBuilder(strLen);
for (int i = 1; i < strLen; i++) {
char val = strChar[i];
if (val != temp) {
stringBuilder.append(temp);
temp = val;
}
}
stringBuilder.append(temp);
return stringBuilder.toString();
}
问题内容: 我想删除的特殊字符,如多次出现,,,从我的java字符串由单下划线。我试过了 并且似乎用下划线替换了连续的相同类型的特殊字符,但否则不起作用。例如: 变成 (下划线有2个。)但是应该是。 同样对于失败的情况。我也尝试使用regex并做了一个正则表达式 但这仍然无济于事。我该如何实现? 问题答案: 注意,这是对与第一个捕获组匹配的 内容 的反向引用。要实际匹配字符类中的一个或多个任何字符
我试图执行一个超文本标记语言文本的清理,我想替换多个八货币的
问题内容: 我想,以取代所有和使用 但我不喜欢我的代码… 有没有比以下方法更有效的方法: ? toLowerCase()就在那里,因为我也希望它也小写… 问题答案: 编辑: 使用正则表达式,并且在字符类内部使用仅识别一个而不是任何字符。
对sed来说有点新。我制作了一个脚本来替换文件中的各种文本。例如,文件
我真的不喜欢这样链接命令。有没有另一种方法在一个做?
问题内容: 在Java中,可以使用哪个正则表达式来替换它们,例如: 之前:aaabbb之后:ab 之前:14442345之后:142345 谢谢! 问题答案: 在Perl中 可以做到这一点,我假设如果Java具有与Perl兼容的正则表达式,它也应该可以工作。 编辑:这是什么意思 编辑:正如其他人指出的那样,Java中的语法将成为 记住要逃避\ 1