私の英語は申し訳ありません。私は正規表現を使用してList<Contact>
を名前でフィルタリングし、新しいものを得る必要があります。List<Contact>
ここでnameは正規表現と一致します。連絡先には名前とIDの2つのフィールドがあります。例えばパラメータが正規表現である場合、どのようにリクエストからデータを取得できますか?
たぶん、このような何かが、私は名前を選択し、正規表現と比較してどのように行うのか分かりません。
どうすればいいですか?
私の英語は申し訳ありません。私は正規表現を使用してList<Contact>
を名前でフィルタリングし、新しいものを得る必要があります。List<Contact>
ここでnameは正規表現と一致します。連絡先には名前とIDの2つのフィールドがあります。例えばパラメータが正規表現である場合、どのようにリクエストからデータを取得できますか?
たぶん、このような何かが、私は名前を選択し、正規表現と比較してどのように行うのか分かりません。
どうすればいいですか?
List<Contact>
の名前でフィルタリングできます。
Pattern pattern = Pattern.compile("...");
List<Contact> matched = list.stream()
.filter(it -> it!=null && it.getName()!=null && pattern.matcher(it.getName()).matches())
.collect(Collectors.toList());
OR例えば、コードをより表現豊かにするために、フィルタ・チェーンを使用した:例えば
List<Contact> matched = list.stream()
.filter(Objects::nonNull)
.filter(it -> it.getName() != null)
.filter(it -> pattern.matcher(it.getName()).matches())
.collect(Collectors.toList());
私はモバイルで、 :)。 –
私はそれを使用すればリスト
@alexsafsafsdごめんなさい。私はモバイルです。今はいかがですか? –
具体例については、私は思います、「Bで始まらない連絡先を返します」連絡先が一般的に空でない名前を持っていると仮定して、 '.filter(contact-> contact.getName()。chatAt(0)!= 'B')'を使用してください。 – Holger