如何从字符窜"abc([email protected]); xyz([email protected])"中分析出有效邮件地址。 写一个匹配邮件地址的regular expression,然后找出字符串中匹配它的子串可用j2sdk1.4或apache jakarta regexp 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼主的问题非常模糊,什么叫有效的邮件地址?就比如你所说的字符串中可以有很多种答案:1)[email protected]和[email protected]2)abc([email protected]和xyz([email protected]....还有很多 分析成 String[] str={"[email protected]","[email protected]"};正则表达式怎么写啊,最好又实用的代码,解决后立即结帖。 下面是我写的一个简单的从给定字符串中分析出有效邮件地址的程序import java.util.regex.*;public class Splitter { public static void main(String[] args) throws Exception { Pattern p = Pattern.compile("[;\\s()]+"); String[] result = p.split("abc([email protected]);xyz([email protected])"); for (int i=0; i<result.length; i++){ int emailerr=0; for(int j=0;j<result[i].length();j++){ if ((result[i].charAt(j)=='@') & (result[i].length() > 5)){ emailerr=emailerr+1; } } if(emailerr!=1){ result[i]=""; } } System.out.println("该字符串中包含的有效地址有:"); for(int i=0;i<result.length;i++) if(result[i]!="") System.out.println(result[i]+"\r"); }} 楼主的兄弟,没有最好的程序,因为一个所谓“有效的”邮件地址对于不同的网站上有不同的标准:比如你的标准可能是邮件地址中不包含"("和")";而CSDN上就允许包含"("和")",所以根据你这个“有效”标准不一样,代码实现也是不一样的 一个概率面试题 分享一下,java -verbose x.java 妙用。 如何用Java Swing做一个类似记事本的文本编辑器?谢谢各位! 数组转换成set后,输出后的数据不是按顺序输出的 请问关于我在netbean下做拖拉Swing 的问题 java学习 ***能否在程序运行过程中导入classpath*** 那位高手指点一下 初学JAVA,麻烦大家推荐编译器 求解如何从控制台向对象数组中输入数据 这个applet有什么问题? 菜鸟问题,高手请解释一下什么是J2SE J2EE 还有SDK?
就比如你所说的字符串中可以有很多种答案:
1)[email protected]和[email protected]
2)abc([email protected]和xyz([email protected]
....
还有很多
正则表达式怎么写啊,最好又实用的代码,解决后立即结帖。
import java.util.regex.*;
public class Splitter {
public static void main(String[] args) throws Exception {
Pattern p = Pattern.compile("[;\\s()]+");
String[] result = p.split("abc([email protected]);xyz([email protected])");
for (int i=0; i<result.length; i++){
int emailerr=0;
for(int j=0;j<result[i].length();j++){
if ((result[i].charAt(j)=='@') & (result[i].length() > 5)){
emailerr=emailerr+1;
}
}
if(emailerr!=1){
result[i]="";
}
}
System.out.println("该字符串中包含的有效地址有:");
for(int i=0;i<result.length;i++)
if(result[i]!="")
System.out.println(result[i]+"\r");
}
}