0

正規表現を使用せずに、配列とファイルの内容を一致させてください。

再生してください:-

txt ファイルに次の文が含まれている場合:

the sql is the best book for jon.
book sql is the best title for jon.
the html for  author asr.
book java for famous writer amr.

この文字列を配列に格納した場合;

sql     html    java
jon     asr     amr  

ファイル内の配列の内容を検索したい、例えば「sql」と「jon」が同じ文でtxtファイルにある場合、その文を書いて、

"sql" の前のすべての単語を接頭辞として、2 つの "sql" と "jon" の間のすべての単語を中間の名前で、"jon" の後のすべての単語を接尾辞として書きます。

私はタラを書いてみます:

String book[][]  = {{"sql","html","java"},{"jon","asr","amr"}};


    String input;
    try {
        BufferedReader br = new BufferedReader(new FileReader(new File("sample.txt") ));
        input= br.readLine();
        while ((input)!= null)
            {
            if((book[0][0].contains(input))&( book[1][0]).contains(input)){
                System.out.println();
             if((book[0][1].contains(input))&( book[1][1]).contains(input)){
                        System.out.println();
                     if((book[0][2].contains(input))&( book[1][2]).contains(input)){
                        System.out.println();
                                    }
                        else
                            System.out.println("not match");
        }}
    }} catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();

    }

プレフィックス、ミドル、サフィックスを抽出するコードの書き方がわかりません

出力は次のとおりです。

the sentence is : the sql is the best book for jon.
prefix is :the
middle is:is the best book for
suffix is: null

等々...

4

2 に答える 2

0

そのためには Pattern クラスを使用する必要があります。http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html

チュートリアルhttp://docs.oracle.com/javase/tutorial/essential/regex/

申し訳ありませんが、正確なコードを書くつもりはありません。

パターンは次のようになります

"(.*)(?:sql|html|java)(.*)(?:jon|asr|amr)(.*)"

次に、Matcher では、プレフィックス、ミドル、サフィックスが matcher.group(1)、matcher.group(2)、および matcher.group(3) として見つかります。

于 2013-04-06T20:13:48.640 に答える