FILTER
funzioneNome funzione | Descrizione | Utilizzo | Parametro di input | Valore restituito |
---|---|---|---|---|
FILTER |
Filtra gli elementi dell'array che soddisfano una determinata condizione di filtro.
Tieni presente che una condizione di filtro deve essere valutata come TRUE o FALSE. Una condizione di filtro include una o più funzioni di trasformazione applicate all'elemento di iterazione dell'array corrente. |
FILTER(~objn -> Variable or Value)
dove ~objn indica l'elemento dell'array corrente a cui vuoi applicare le funzioni di trasformazione. Per impostazione predefinita, il valore di n parte da 1. |
Una condizione di filtro che restituisce TRUE o FALSE. | Un array di elementi che corrispondono alla condizione del filtro. |
Dati di esempio:
$var1$ = {
"sara@example.com",
"bola@example.com",
"222larabrown@gmail.com",
"dana@examplepetstore.com",
"cloudysanfrancisco@gmail.com"}
Utilizzo: $var1$.FILTER(~obj1-> ~obj1.CONTAINS("@gmail.com"))
Filtra gli elementi stringa che contengono @gmail.com in var1.
Output:
{"222larabrown@gmail.com","cloudysanfrancisco@gmail.com"}
Dati di esempio:
$var1$ = { "citynames": [ { "city": "Abbeville", "state": "Louisiana" }, { "city": "Aberdeen", "state": "Maryland" }, { "city": "Benicia", "state": "California" }, { "city": "Chehalis", "state": "Washington" }, { "city": "Aberdeen", "state": "Washington" }, { "city": "Aberdeen", "state": "Mississippi" }, { "city": "Cheektowaga", "state": "New York" } ] }
Utilizzo: $var1$.citynames.FILTER(~obj1-> ~obj1.GET_PROPERTY("city").EQUALS("Aberdeen"))
Filtra gli elementi che hanno la città di Aberdeen in var1.
Output:
[{ "city": "Aberdeen", "state": "Maryland" }, { "city": "Aberdeen", "state": "Washington" }, { "city": "Aberdeen", "state": "Mississippi" }]
Dati di esempio:
$var1$ = { "products": [ { "PA": "Integrations", "users": [ { "name": "Ariel", "role": [ "editor", "approver" ] }, { "name": "Dana", "role": [ "admin", "deployer" ] }, { "name": "Lee", "role": [ "viewer" ] } ] }, { "PA": "Apigee", "users": [ { "name": "Mahan", "role": [ "editor", "admin", "deployer" ] }, { "name": "Quinn", "role": [ "invoker" ] } ] }, { "PA": "Connectors", "users": [ { "name": "Kiran", "role": [ "invoker", "admin", "deployer" ] }, { "name": "Sasha", "role": [ "admin" ] } ] } ] }
Utilizzo: $var1$.products.FOREACH(~obj1-> ~obj1.SET_PROPERTY(~obj1.GET_PROPERTY("users").FILTER(~obj2-> ~obj2.GET_PROPERTY("role").TO_STRING().CONTAINS("admin")), "users"))
Filtra gli elementi che contengono admin in users di var1.
Output:
[ { "PA": "Integrations", "users": [ { "name": "Dana", "role": [ "admin", "deployer" ] } ] }, { "PA": "Apigee", "users": [ { "name": "Mahan", "role": [ "editor", "admin", "deployer" ] } ] }, { "PA": "Connectors", "users": [ { "name": "Kiran", "role": [ "invoker", "admin", "deployer" ] }, { "name": "Sasha", "role": [ "admin" ] } ] } ]