我把一篇文章赋给一个字符串 String str;我需要进行替换,要求按照指定的规则进行替换,比如所有的词语能用近义词表示的就替换成近义词,如:“快速修改计算机的注册表”,替换成“迅速修改电脑的注册表”,把“快速”替换成了“迅速”,“计算机”替换成了“电脑”,等等,最好之前能先定义一个需要替换的近义词表,然后遍历整个字符串把所有能替换的都替换掉。由于我网站大量采集的信息,百度修改算法之后大量封杀采集站,拒绝收录,我本来想用人工的方法一一修改替换,但是动辄10几万个页面人工替换会累死的,才出此下策,不知道java能不能实现?
{
public static void main(String[] args)
{
String str = "abcfjdkabcfjdkabcfjdk";//内容
String str1 = "abc";//待替换内容
String str2 = "****";//替换内容
System.out.println(str);//输出原来内容 StringBuilder sb = new StringBuilder(str);
for (int i = 0; i < sb.length()-3; i++)//替换过程
{
if (sb.substring(i, i+3).equals(str1))
{
sb.delete(i, i+3);
sb.insert(i, str2);
i += str2.length() - str1.length();
}
}
System.out.println(sb.toString());//输出替换后内容
}
}