У меня есть эта проблема ниже в Perl.I есть файл, в котором я получаю список писем в качестве ввода.Perl RegEx, чтобы найти часть адреса электронной почты до @
Я хотел бы проанализировать строку перед «@» всех адресов электронной почты. (Позже я буду хранить всю строку перед @ в массиве)
Для примера. в: [email protected]
, я хотел бы проанализировать адрес электронной почты и извлечь abcdefgh.
Мое намерение состоит в том, чтобы получить только строку перед «@». Теперь вопрос в том, как проверить это, используя регулярное выражение. Или есть ли другой метод, использующий substr?
В то время как я использую регулярное выражение: $ mail = ~ "\ @" в Perl, это не дает мне результата.
Также, как я нахожу, что символ «@» есть в каком индексе строки $ mail?
Я ценю, если кто-нибудь может мне помочь.
#!usr/bin/perl
$mail = "[email protected]";
if ($mail =~ "\@") {
print("my name = You got it!");
}
else
{
print("my name = Try again!");
}
В приведенном выше код $ почты = ~ "\ @" не дает мне желаемый результат, но ($ = ~ почта "ABC") делает.
$ mail = ~ "@" будет работать только в том случае, если данная строка $ mail = "abcdefgh \ @ gmail.com";
Но в моем случае я получаю вход с адресом электронной почты как свой.
Не с escape-символом.
Спасибо,
Том
[Email: Адрес] (http://p3rl.org/Email::Address) лучше. – daxim