我正在使用正则表达式来匹配文本中的内容,并且每行都使用BufferedReader。 然后我发现了我无法解决的问题:
BufferedReader br=null;
BufferedWriter bw=null;
Pattern p=Pattern.compile(myRegex);
try{
FileReader fr=new FileReader(originTextUrl);
FileWriter fw=new FileWriter(targetTextUrl);
br=new BufferedReader(fr);
bw=new BufferedWriter(fw);
String s="";
while ((s=br.readLine())!=null){
Matcher m=p.matcher(br);
那个模式中的matcher(java.lang.CharSequence)无法应用于(java.io.BufferedReader),我不知道如何解决这个问题。 谢谢你的回答!
答案 0 :(得分:2)
正如它所说,你不能将Pattern
应用于BufferedReader
- 你必须从阅读器中读取数据,然后将模式应用于此。
在这种情况下,你已经在阅读数据 - 但是你忽略了它!你想要:
Matcher m = p.matcher(s);
我也强烈建议您使用更多描述性的变量名称。
答案 1 :(得分:0)
Matcher m=p.matcher(s);