#ruby #arrays #email #sorting
#ruby #массивы #Адрес электронной почты #сортировка
Вопрос:
Итак, я сбросил все электронные письма из базы данных в текстовый файл и собираюсь отсортировать их по поставщику электронной почты, в основном все, что идет после знака @.
Я знаю, что могу использовать регулярное выражение для проверки каждого электронного письма. Однако как мне указать, что я хочу отсортировать их по всему, что идет после знака @?
Ответ №1:
Я знаю, что могу использовать регулярное выражение для проверки каждого электронного письма.
Осторожно! Диапазон допустимых адресов электронной почты намного шире, чем думает большинство людей. Единственные правильные регулярные выражения для проверки электронной почты имеют длину порядка страницы. Если вам необходимо использовать регулярное выражение, просто проверьте наличие @
и единицы .
.
Однако как мне указать, что я хочу отсортировать их по всему, что идет после знака @
email_addresses.sort_by {|addr| addr.split('@').last }
Комментарии:
1. Кроме того, если у вас все еще есть адреса электронной почты в базе данных, вы могли бы (и, вероятно, должны) сделать это на стороне базы данных.