removeIfNot()

Zusammenfassung

Gibt eine Kopie der Eingabe liste zurück, wobei alle Varianten entfernt wurden, bei denen die Funktion fun False zurückgibt.

Syntax

removeIfNot ( fun As Name, _
              list As List ) As Any 
Argument Typ Beschreibung
fun Name Der Name der anzuwendenden Funktion. Die Funktion muss einen booleschen Wert zurückgeben.
Liste Liste Die Liste der Argumente, auf die die Testfunktion angewendet wird.

Beispiel 1

Intent >removeIfNot(:empty?, {{}, {:b}, {}, {:d}}) 
--> {{}, {}} 
Gibt nur leere Listen in einer Liste mit Listen zurück. Das heißt, die nicht leeren Unterlisten wurden entfernt.

Beispiel 2

Verwenden einer benutzerdefinierten Funktion
Intent >removeIfNot(string?, {:a, :c, "b", :d, 3, {3}, "3", 2, 1}) 
--> {"b", "3"} 
In diesem Beispiel wurden mit der folgenden benutzerdefinierten Funktion nur nicht ganzzahlige Werte zurückgegeben:
Function string?(item As Any) As Boolean 
    string? = (typeName(item) = :string)
End Function 

Beispiel 3

Intent >removeIfNot(:even?, {1, 2, 3, 4, 5, 6, 7, 8}) 
--> {2, 4, 6, 8} 
Hier wurden die ungeraden (nicht geraden) Elemente aus dem Ergebnis entfernt.