Как узнать, начинается ли адрес электронной почты с чего-то и заканчивается доменом - PullRequest
1 голос
/ 24 января 2020

Возьмем это письмо, например

$email = "outlook_75AA07B2DF4B8074@outlook.com";

Мне нужно использовать php, чтобы узнать, начинается ли письмо с outlook_ И заканчивается @outlook.com. Так как 75AA07B2DF4B8074 всегда будет другим. У меня есть начало, но я не уверен, как его получить.

if (strpos($email, 'outlook_') === 0) {

}

Ответы [ 2 ]

2 голосов
/ 24 января 2020

Вы можете использовать strpos с отрицательным смещением для поиска трейлинга @outlook.com. Поскольку он имеет фиксированную длину 12 символов, вы можете использовать смещение от -12 до strpos, чтобы искать только @outlook.com в последних 12 символах; таким образом, он будет совпадать, только если эти символы точно @outlook.com. Например:

$email = "outlook_75AA07B2DF4B8074@outlook.com";
if (strpos($email, 'outlook_') === 0 && strpos($email, '@outlook.com', -12) !== false) {
    echo "outlook email address\n";
}
2 голосов
/ 24 января 2020

preg_match('/^outlook_.*@outlook\.com$/', $email);

...