JPA仕様でRESTfulクエリを実装しています。このようになります複数の条件でURLを処理したいと思います:この正規表現のパターンマッチングが動作しない理由
http://localhost:8080/samples?search=lastName:doe,age>25
検索文字列は「」で区切られたパターン(\\w+?)(:|<|>)(\\w+?)
にマッチします。
したがって、私は、文字列からのMatcherを取得するために、次のコードを書いた:
static Matcher getMatcherFromString(String str) {
Pattern pattern = Pattern.compile("(\\w+?)(:|<|>)(\\w+?),");
Matcher matcher = pattern.matcher(str + ",");
return matcher;
}
この方法は、その後、URLを解析するために、コントローラに呼び出されます。
ただし、文字列analysisId:fdebfd6e-d046-4192-8b97-ac9f65dc2009
を使用してメソッドをテストすると、nullが返されます。なぜパターンマッチングに間違っていたのですか?
の\ w'は '-' – Fallenhero
@Fallenhero' \ w'は言葉のためであると一致しない 'ので、私は思います。代わりに私は何を使うべきですか? – ddd
私はあなたが好きなものを知りませんが、おそらく '[0-9a-zA-Z _-]'ですか? – Fallenhero