Я могу создать неограниченный псевдоним электронной почты в Аккаунтах Google (Gmail), ссылка: http://www.gizmodo.com.au/2014/09/how-to-use-the-infinite-number-of-email-addresses-gmail-gives-you/
Но мне нужно отфильтровать адрес электронной почты, чтобы пользователь не использовал тот же оригинальный адрес электронной почты для регистрации в моем приложении.
Я хотел бы знать, есть ли что-нибудь, чтобы решить это? или мой уникальный вариант фильтрации с помощью регулярных выражений?
Я не согласен с комментарием, прямо заявляющим, что вы не должны удалять «фильтры» (например, user_email+some_filter_to_flag_incoming_messages
@ Example.org). «Ваши варианты использования не совпадают с моими вариантами использования» и т. Д. [0]
tl; dr: шаблон регулярного выражения, который вы ищете: '(\+.*)(?=\@)'
Объяснение:
Для начала напишите регулярное выражение, соответствующее буквальному знаку «+», и любой отдельный символ, любое количество раз:
'(\+.*)'
При замене этого шаблона на пустую строку, это превратит [email protected]
в tristan
, Если вы решили разделить символ @, поздравляем, добавьте полученную строку в ‘@’ + domain.TLD к этому, и все готово. Я упоминаю об этом на тот случай, если вы уже разделили адрес электронной почты, и он все равно висит.
Если вы не разделив адрес электронной почты пользователя на символ @, вам нужно использовать «положительный прогноз» (сопоставьте этот шаблон, если он продолжается эту вещь я уточняю) чтобы сообщить вашему матчу, когда нужно остановиться (чтобы мы не забрали слишком много):
'(\+.*)(?=\@)'
с этим на месте, мы получаем [email protected]
, Ура, это не было так грубо.
Я понимаю, почему люди используют псевдонимы / фильтры:
Это все, что говорит: «Я понимаю, люди любят фильтры», но есть веские причины, как автора приложения или компании, чтобы отметить их.
Других решений пока нет …