去哪儿第二题
有待完善,感觉效率不快
1 package test; 2 3 import java.io.File; 4 import java.io.FileNotFoundException; 5 import java.util.Scanner; 6 7 public class Qunaer { 8 9 public static void checkKeyword(String sourceStr){ 10 11 File file = new File("C:/Users/lenovo/Desktop/关键字.txt"); 12 String nSourceStr = null; 13 try { 14 nSourceStr = sourceStr.trim().replace(" ", ""); 15 char []array = sourceStr.toCharArray(); 16 Scanner sc = new Scanner(file); 17 while(sc.hasNext()){ 18 String checkCode = sc.next(); 19 if(nSourceStr.contains(checkCode)){ 20 //firstIndex:代表字串中关键字出现的第一个位置的索引 21 //将checkCode转变为charArray,找出最后一个字的位置索 22 //lastIndex记录最后一个字出现的索引位置 23 24 char []codeChar = checkCode.toCharArray(); 25 int firstIndex = sourceStr.indexOf(codeChar[0]); 26 int lastIndex = sourceStr.indexOf(codeChar[codeChar.length-1], firstIndex); 27 String subStr = sourceStr.substring(firstIndex,lastIndex+1); 28 System.out.println("搜索到评论中的敏感词汇: "+subStr); 29 } 30 } 31 System.out.println(sourceStr); 32 } catch (FileNotFoundException e) { 33 // TODO Auto-generated catch block 34 e.printStackTrace(); 35 } 36 } 37 38 public static void main(String []Args){ 39 checkKeyword("这家酒店性价比高,提供海外代 购服务,网 店地 址:xxxx,销 售 电话为:7777777"); 40 } 41 }
输出结果:
搜索到评论中的敏感词汇: 网 店地 址
搜索到评论中的敏感词汇: 销 售 电话
搜索到评论中的敏感词汇: 代 购
这家酒店性价比高,提供海外代 购服务,网 店地 址:xxxx,销 售 电话为:7777777