0

これはおそらく単純なものであり、grails よりも Java に関連していますが、少し迷っており、これをどこから調べればよいかさえわかりません。Google で検索しましたが、何を求めているのかよくわかりません。可能であればポインターをお願いします!

grails アプリには、保存したフォームがあります。コントローラーでは、単純なprintlnを介して返されるパラメーターのリストを確認できます。現在、特定の値を見つけたい場合は、params.eachを実行し、キーを事前に定義された文字列と比較して、必要なものを見つけます。質問は: -

リスト全体をループして検索するのではなく、「バナナ」というキーを持つパラメーターの値を取得すると具体的に言うことはできますか?

また、セカンダリ パラメータの新しいセットを作成する方法、または正規表現を使用して「キーがパターンに一致するすべての項目を表示する」と言う単純な古い辞書項目 (それは正しい用語ですか?) を作成する方法はありますか? "?

パラメータがそれほど大きくないため、速度に関してはおそらく大きな違いはありませんが、可能な場合はより効率的にすることをお勧めします。

フィードバックをいただければ幸いです。

4

2 に答える 2

1

最初の質問では、「バナナ」パラメーターを取得するには、次を使用する必要があります。

params.banana

次に、正規表現ですべてを検索します。

def matched = params.findAll { it.key =~ /XYZ/ }
//or
Pattern p = ~/XYZ/
def matched = params.findAll { p.matcher(it.key).matches() }
于 2013-07-10T09:45:03.367 に答える