Email 从文本文件中提取电子邮件地址

Email 从文本文件中提取电子邮件地址,email,text,replace,notepad++,sublimetext,Email,Text,Replace,Notepad++,Sublimetext,我需要从包含一些名称的地址的文本文件中提取电子邮件地址,和您可以使用regex获取标记之间的电子邮件地址,如下所示: (?<=\<)(.*)(?=\>+) 替换为与电子邮件地址匹配并添加换行符的$&\n。使用记事本++ 我将首先用换行符替换所有空格和逗号(搜索模式扩展,然后使用\n) 然后,您将在单独的行中显示所有电子邮件地址 从那里,您只需录制一个宏,找到@并剪切该行,然后创建一个新的文本文件,这可以通过打开两个文本文件并使用Ctrl-Tab在它们之间切换来完成 并更换

我需要从包含一些名称的地址的文本文件中提取电子邮件地址,
您可以使用regex获取
标记之间的电子邮件地址,如下所示:

(?<=\<)(.*)(?=\>+)
替换为与电子邮件地址匹配并添加换行符的
$&\n

使用记事本++ 我将首先用换行符替换所有空格和逗号(搜索模式扩展,然后使用\n)
然后,您将在单独的行中显示所有电子邮件地址
从那里,您只需录制一个宏,找到@并剪切该行,然后创建一个新的文本文件,这可以通过打开两个文本文件并使用Ctrl-Tab在它们之间切换来完成

并更换
这可能不是最简单的方法,但我可能会这样做,我只想:

<?(\S+@\S+)>?

您可以从文件中提取所有电子邮件id

     BufferedReader bf = new BufferedReader(new 
     FileReader("C://Users//..........your file name"));
     String line="";
     Pattern pt = Pattern.compile("[A-Za-z0-9][A-Za-z0-9_.]*@[A-Za-z0-9]+
     ([.A-Za-z])+"); 

    while((line=bf.readLine()) != null){
    Matcher mt = pt.matcher(line);
    while(mt.find()){
        System.out.println(mt.group());
    }
    }

并非所有电子邮件都会在这些标签中关闭,
标志会出现在wierd位置。我不知道这个文本文件来自哪里,但它非常混乱。。。对不起that@chadocat-你只对电子邮件地址感兴趣..?哦,那没那么难。更新答案。对不起,我不熟悉正则表达式。我必须了解一下,有没有在线工具可以帮助我?@chadocat-不客气,很高兴我能帮上忙。还有一个在线工具有更多的选项,您可以在那里进行替换并选择输出类型。您的示例的预期结果是什么?@M42在结尾处用我需要的内容更新了我的问题。当电子邮件和它们之间没有空间时,这也会输出
符号和COMA。@web tiki此选项无效最完美的,但您可以打开sublime并搜索“”simbol并删除它,然后使用
([a-zA-Z0-9\.]+@[A-Za-z0-9_]+?\.[A-Za-z]{2,6})
<?(\S+@\S+)>?
     BufferedReader bf = new BufferedReader(new 
     FileReader("C://Users//..........your file name"));
     String line="";
     Pattern pt = Pattern.compile("[A-Za-z0-9][A-Za-z0-9_.]*@[A-Za-z0-9]+
     ([.A-Za-z])+"); 

    while((line=bf.readLine()) != null){
    Matcher mt = pt.matcher(line);
    while(mt.find()){
        System.out.println(mt.group());
    }
    }