В нашем приложении есть страница приглашения, где пользователь может импортировать свою адресную книгу.Мы используем внешний сервис для их получения, поэтому он просто помещает результаты в текстовое поле.Мы начали с простого разделения результатов через запятую и быстро выяснили, что это не сработает из-за:
"Smith, Joe" <jsmith@example.com>, "Jackson, Joe" <jjackson@example.com>
Это будет работать между двумя записями, но также и внутри них.Просто интересно, есть ли известный надежный способ сделать эту работу.
Может быть, сработает регулярное выражение?Я очень плохо, кто-нибудь может подсказать мне, что регулярное выражение будет извлекать только письма в массив ...
Примерно так:
emails = recipients.scan(/.*@.*/) <<==== but i know that's not right
РЕДАКТИРОВАТЬ
Похоже, что-то вроде этого может работать.У любого есть какие-либо предложения, если это будет работать для особых случаев:
emails = recipients.scan(/[a-z0-9_.-]+@[a-z0-9-]+\.[a-z.]+/i)