{"id":4226,"date":"2018-09-10T16:39:55","date_gmt":"2018-09-10T14:39:55","guid":{"rendered":"http:\/\/www.tutego.de\/blog\/javainsel\/?p=4226"},"modified":"2018-09-10T16:39:55","modified_gmt":"2018-09-10T14:39:55","slug":"praedikate-aus-java-util-regex-pattern","status":"publish","type":"post","link":"https:\/\/www.tutego.de\/blog\/javainsel\/2018\/09\/praedikate-aus-java-util-regex-pattern\/","title":{"rendered":"Pr\u00e4dikate aus java.util.regex.Pattern"},"content":{"rendered":"<p>Die Pattern-Methoden asPredicate() und asMatchPredicate() (ab Java 11) liefern ein Predicate&lt;String&gt;, sodass ein regul\u00e4rer Ausdruck als Kriterium, zum Beispiel zum Filtern oder L\u00f6schen von Eintr\u00e4gen in Datenstrukturen, genutzt werden kann.<\/p>\n<p>Es unterscheiden sich die Methoden wie folgt:<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"298\">Methode<\/td>\n<td width=\"298\">Implementierung<\/td>\n<\/tr>\n<tr>\n<td width=\"298\">Predicate&lt;String&gt; asPredicate()<\/td>\n<td width=\"298\">return s -&gt; matcher(s).<span style=\"font-weight: normal !msorm;\"><strong>find()<\/strong><\/span><\/td>\n<\/tr>\n<tr>\n<td width=\"298\">Predicate&lt;String&gt; asMatchPredicate()<\/td>\n<td width=\"298\">return s -&gt; matcher(s).<span style=\"font-weight: normal !msorm;\"><strong>matches()<\/strong><\/span>;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><em>asPredicate() matcht bei einem Teilstring, asMatchPredicate() den gesamten String<\/em><\/p>\n<p>Beispiel: L\u00f6sche aus einer Liste alle Strings, die leer sind oder Zahlen enthalten:<\/p>\n<pre>List&lt;String&gt; list = new ArrayList&lt;&gt;( Arrays.asList( \"\", \"69cool\", \"1898\", \"Sisi\" ) );\r\n\r\nlist.removeIf( Pattern.compile( \"\\\\d+\" ).asPredicate().or( String::isEmpty ) );\r\n\r\nSystem.out.println( list );\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/ [Sisi]\r\n\r\n\u00c4ndern wir asPredicate() in asMatchPredicate() ist die Ausgabe [69cool, Sisi].<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Die Pattern-Methoden asPredicate() und asMatchPredicate() (ab Java 11) liefern ein Predicate&lt;String&gt;, sodass ein regul\u00e4rer Ausdruck als Kriterium, zum Beispiel zum Filtern oder L\u00f6schen von Eintr\u00e4gen in Datenstrukturen, genutzt werden kann. Es unterscheiden sich die Methoden wie folgt: Methode Implementierung Predicate&lt;String&gt; asPredicate() return s -&gt; matcher(s).find() Predicate&lt;String&gt; asMatchPredicate() return s -&gt; matcher(s).matches(); asPredicate() matcht bei einem [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[108,66],"tags":[],"class_list":["post-4226","post","type-post","status-publish","format-standard","hentry","category-java-11","category-java-8"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4226","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/comments?post=4226"}],"version-history":[{"count":1,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4226\/revisions"}],"predecessor-version":[{"id":4227,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4226\/revisions\/4227"}],"wp:attachment":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/media?parent=4226"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/categories?post=4226"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/tags?post=4226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}