import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CopyOfKeyWordFilter
{
private static Pattern pattern = null;
public static void initPattern() {
StringBuffer patternBuf = new StringBuffer();
try {
for(int i = 0; i < 10000; i++)
{
patternBuf.append("keyword" + i + "|"); //以 | 分隔
}
patternBuf.deleteCharAt(patternBuf.length() - 1);
//默认下,properties文件读取编码: ISO8859-1
pattern = Pattern.compile(new String(patternBuf.toString().getBytes("ISO-8859-1"), "UTF-8"));
} catch (IOException e) {
e.printStackTrace();
}
}
public static String doFilter(String str) {
System.out.println("str:" + str);
try {
Matcher m = pattern.matcher(str);
str = m.replaceAll("*"); //用*替换
} catch (Exception e) {
e.printStackTrace();
}
return str;
}
public static void main(String[] args)
{
String str = "Properties 类表示了一个keyword9持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。我就测试下keyword10,呵呵
initPattern();
str = CopyOfKeyWordFilter.doFilter(str);
System.out.println(str);
}
}