多年来,我慢慢开发了一个正则表达式,可以正确验证MOST电子邮件地址,假设他们不使用IP地址作为服务器部分.
我在几个PHP程序中使用它,它大部分时间都可以工作.但是,我不时会遇到使用它的网站遇到问题的人,我最终不得不进行一些调整(最近我意识到我不允许使用4字符TLD).
验证电子邮件的最佳正则表达式是什么?
我已经看到了几个使用函数的解决方案,这些函数使用了几个较短的表达式,但我宁愿在一个简单的函数中使用一个长复杂表达式,而不是在一个更复杂的函数中使用几个短表达式.
我的目的是从网页上获取电子邮件地址.我有页面源代码.我正逐行阅读页面源代码.现在我想从我正在阅读的当前行获取电子邮件地址.此当前行可能有也可能没有电子邮件.我看到了很多正则表达式的例子.但其中大多数都是用于验证电子邮件地址.我想从页面源获取电子邮件地址而不是验证.它应该工作http://emailx.discoveryvip.com/正在工作
一些示例输入行是:
1)<p>Send details to <a href="mailto:%72%65%62%65%6b%61%68@%68%61%63%6b%73%75%72%66%65%72.%63%6f%6d">neeraj@yopmail.com</a></p>
2)<p>Interested should send details directly to <a href="http://www.abcdef.com/abcdef/">www.abcdef.com/abcdef/</a>. Should you have any questions, please email <a href="mailto:%6a%6f%62%73@%72%65%6c%61%79.%65%64%75">neeraj@yopmail.com</a>.
3)Note :- Send your queries at neeraj@yopmail.com for more details call Mr. neeraj 012345678901.
Run Code Online (Sandbox Code Playgroud)
我想从示例1,2和3中获取neeraj@yopmail.com.我正在使用java并且我在rexexp中表现不佳.帮我.
我有一个文本文件,应该看起来像这样
我是哈坎。我的电子邮件地址是 hakan@cs.uh.edu,你叫什么名字?嗨,我叫 Tarikul,我最喜欢的电子邮件地址是 tarikul2000@uh.edu
我应该创建一个程序,该程序将在存储用户名、域名、子域和扩展名的文件中定位电子邮件,然后将它们重写为另一个文本文件。
import java.io.* ;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.io.PrintWriter;
import java.io.FileOutputStream;
public class Try {
public static void main(String[] args) {
Email [] storage;// email is a class that was made to store the data
try {
Scanner input= new Scanner("inputemails.txt");
PrintWriter output= new PrintWriter("outputemails.txt");
}
catch (FileNotFoundException e) {
System.out.print("File not found");
System.exit(0);}
int i=0;
while(input.hasNextLine()){
if(input.contains("@"));
{
storage[i]=
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我到目前为止所拥有的,它并不多但是我如何让它在文本文件中找到电子邮件?
我也认为如果我在我的作业中添加实际说明会更好,我不要求任何人完成整个程序我将如何分离我需要找到的数据
- 连接到外部输入文件。输入文件的名称将始终是 inputemails.txt,因此请不要在您的程序中询问文件名。
- 检测文件中的电子邮件地址。
- 如果电子邮件没有子域,请为该电子邮件创建电子邮件对象。
- 如果电子邮件有子域,请为该电子邮件创建 UniversityEmail 对象。
- 请将所有电子邮件存储在同一个(一个)数组列表中。 …