使用正则表达式从文件名中提取电子邮件


Extract email from filename using regex

我有这种格式的文件名: SCANNERID_00001SCAN_28-11-2013_email_X_gmail.com_LEFT.zip

另一个例子

SCANNERID_99999SCAN_33-03-2015_mymail_X_hotmail.com_RIGHT.zip

@标志已替换为_X_。边(在文件名的末尾,在本例中为 LEFT (是可变的;要么LEFT,要么RIGHT.

日期

显然是可变的,不一定是当前日期。

我想在 PHP 中使用正则表达式提取email@gmail.commymail@hotmail.com

preg_replace("/SCANNERID_.+_'d{1,2}-'d{1,2}-'d{1,4}_(.+)_X_(.+)_(LEFT|RIGHT).zip/", "$1@$2", $input_lines);