У меня есть эти данные,
[
%{
company_id: "ocsc.ie",
created_at: "Wednesday, 08 Mar 2017 6:14 AM",
name: "O'Connor Sutton Cronin",
session_count: 2,
user_count: 8
},
%{
company_id: "virtuspm.ie",
created_at: "Tuesday, 10 Jul 2018 8:48 AM",
name: "VIRTUS",
session_count: 1,
user_count: 7
},
%{
company_id: "garlandconsultancy.com",
created_at: "Wednesday, 20 Jun 2018 3:32 PM",
name: "Garland",
session_count: 1,
user_count: 3
},
%{
company_id: "protectorsecurity.co.uk",
created_at: "Friday, 31 Aug 2018 11:03 AM",
name: "Protector Security Group",
session_count: 4,
user_count: 9
},
%{
company_id: "tcd.ie",
created_at: "Wednesday, 01 Mar 2017 7:39 AM",
name: "TCD",
session_count: 4,
user_count: 18
}
]
Я пытаюсь отсортировать их по разным значениям.
Enum.sort_by(data, &(&1.user_count), &Kernel.>=/2)
Целые и строковые значения оба, приведенное выше выражение работает.
Я пробовал целочисленные значения, меня беспокоит, как мы можем отсортировать по дате?Кроме того, мы можем искать через значения?с like
выражением?только для name
и company_id
, где вы передаете поисковый запрос как gar
.
[%{
company_id: "garlandconsultancy.com",
created_at: "Wednesday, 20 Jun 2018 3:32 PM",
name: "Garland",
session_count: 1,
user_count: 3
}]
.Так что все эти карты, похожие на поисковые запросы, отфильтрованы.
Я пробовал это
Enum.filter(data, fn(x) -> String.match?(String.downcase(x.name), ~r/String.downcase("VIR")/) end)
Это тоже не работает. Любая помощь будет очень благодарна.