0

テキスト内の何かを照合するために正規表現を使用しており、各行を 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);

それはパターンのマッチャー (java.lang.CharSequence) を (java.io.BufferedReader) に適用できません。これを解決する方法がわかりません。ご回答ありがとうございます。

4

2 に答える 2

2

Patternそれが言うように、aを a に適用することはできません。BufferedReaderリーダーからデータを読み取ってから、それにパターンを適用する必要があります。

この場合、すでにデータを読み取っていますが、それを無視しています! あなたがしたい:

Matcher m = p.matcher(s);

また、よりわかりやすい変数名を使用することを強くお勧めします。

于 2013-10-09T14:40:55.617 に答える
0

これを試しましたか?

Matcher m=p.matcher(s);
于 2013-10-09T14:41:15.287 に答える