Java练习实现敏感词的替换
目录
Java练习——实现敏感词的替换
要求:
用户所提交的聊天内容中的敏感性词语进行过滤;如“爆炸”、“恐怖”、“枪”,“侮辱词语…”等需要过滤掉,用其他词语替换掉。
注意敏感词以及对应*的个数对应。
代码展示:
public class Replace {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String target = sc.nextLine();//接收控制台输入的内容
String str [] = {"性","色情","爆炸","恐怖","枪"};
//1.遍历str中的内容(目的:判断传入的内容里面有没有str中的内容)
for (String word : str) {
//2.判断target中有没有敏感词
if (target.contains(word)){
//3.判断敏感词的个数 -> 一个敏感词对应一个*...
int len = word.length();
//4.定义一个敏感词替换字符
String replace = "*";
//注意:我们定义的replace已经是*
//如果输入的是一个字符,直接替换即可,不用进下面的循环
for (int i = 0; i < len-1; i++) {//5.确定需要替换敏感词的长度,决定*的个数
replace += "*";
}
//6.实现敏感词的替换
target = target.replace(word,replace);
}
}
//7.控制台打印,替换敏感词后的字符串
System.out.println(target);
}
}
注意:
contains(CharSequence s)
当且仅当此字符串包含指定的char值序列时才返回true。
//判断传入的字符串s,是否包含指定的字符。
System.out.println("abc".contains("a")); //true
System.out.println("bcd".contains("a")) ;//false
contains(CharSequence s) :方法传入的是一个CharSequence类型的值s,对于CharSequence 类型,可以 直接理解为字符串类型 。
了解: CharSequence
CharSequence 是一个接口,String/StringBuffer/StringBuilder都是其的实现类,所以 可以等价为CharSequence就是操作字符串的接口…
欢迎关注微信公众号: 小红的成长日记 ,一起学Java!