1

文法の特定の式のさまざまなパラメーターを抽出する方法を理解しようとしています。1つの文法規則は次のようになります。

s( X, Y(X,-), T(Y(X,-),X,X) ) 

最初に先頭の文字列(この場合)を抽出し、s次にすべてのパラメーター(この場合は、、、)をステップスルーXY(X,-)ますT(Y(X,-),X,X)s原則として、パラメータがまったく取得されていない可能性もあります。

元の文法では、このような式には任意の数のパラメーターが含まれている可能性があり、パラメーター自体も含まれている可能性があります。

現時点では、次のコードを取得しました。

Scanner sc = new Scanner(Rule);
String next = new String();


sc.useDelimiter("\\(");
next = sc.next();
//...Do something...//

sc.useDelimiter("");   
if(sc.hasNext()){   //Check if there are parameters
    sc.useDelimiter("\\)"); //Which delimiter should I use?
    while(sc.hasNext()){
       next = sc.next();
       //...Do something...//
    }
} else {
    return next;
}

例に関して、、などXのパラメータを取得するためにどの区切り文字を使用すべきかわかりません。Y(X,-)T(Y(X,-),X,X)

4

0 に答える 0