比如,字符串,[email protected]想截取ABC应该用什么函数.请教了.

解决方案 »

  1.   

    不太清楚,好像这样写"[email protected]".substring(0,"[email protected]".indexOf("@"));
      

  2.   

    试试这个/*
     * email 取用户名
     * @author sundful
     */
    public class EmailTest {
    public static void main(String[] args) {

    String s="[email protected]";
    getUser(s);
    } public static void getUser(String s) {

    if(s==null || s.trim().length()<0) return;
    int num=s.indexOf("@");
    if(num>0)
    {
    String ss=s.substring(0,num);
    System.out.println(ss);
    }
    }
    }
      

  3.   

    package test;public class TT { /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub String str = "[email protected]";
    int index = str.indexOf("@");
    String result = str.substring(0, index);
    System.out.println(result); }
    }
      

  4.   

    package demo;public class CutString { public static void main(String[] args){
    new CutString().doSplit();
    }

    public void doSplit() {
    String email = "[email protected]";
    String[] splits = email.split("@");
    System.out.println(splits[0]);
    }
    }
      

  5.   


    public static void main(String[] args){ String str1="[email protected]";

    String[] sz=str1.split("@");

    System.out.println(sz[0]); 

    String s="[email protected]";  
    }
      

  6.   

    String str="[email protected]";
    String[] result=str.split("@");
    System.out.println(result[0]);
      

  7.   

    String stra = [email protected];
    String[] strarr = stra.split("@");
    System.out.println(strarr[0].toString());
      

  8.   

    Thank you so much!!!!!!
      

  9.   

     建议用正则表达式。
     import java.util.regex.Pattern;
    import java.util.regex.Matcher;public class Test {
    public static void main(String[] args) {if(args.length != 1) {
    System.out.println("请输入一个参数!");
    System.exit(0);
    }
    Pattern p = Pattern.compile("\\w @(\\w .) [a-z]{2,3}");
    Matcher m = p.matcher(args[0]);
    boolean b = m.matches();
    if(b) {
    System.out.println("有效邮件地址");
    } else {
    System.out.println("无效邮件地址");
    }
    }
    }Pls see up codes. 
      

  10.   

    额......貌似11楼表达式有问题....
    假设..我的EMAIL地址为:
    [email protected]
    就显示为错了.....应该是
    ("\\w   @(\\w   .)   [a-z]+")
      

  11.   

    没毛病邮箱好像没有4位结尾的常见的点.cn  .com  .name是什么
      

  12.   

    14楼说的也对,确实有.info .name之类的域名,不过在本题中检测邮箱地址是否正确用我的那个是没问题的。 另:用indexOf()和split()都是很好的方法!
      

  13.   

    没时间了 写个简单点的,主要是用group(1)import java.util.regex.Matcher;
    import java.util.regex.Pattern;public class GetEmailName {
    public static void main(String[] args) {

    String str = "[email protected]";
            String result = "";
             
            Pattern pattern = Pattern.compile("(\\w*)@\\w*\\.\\w*");
            Matcher matcher = pattern.matcher(str);
            
            if(matcher.find())
             System.out.println(matcher.group(1));
    }}
      

  14.   


    public class Test{
    public static void main(String[] args){
    String s="[email protected]";
    StringBuffer br=new StringBuffer();
    for(int i=0;i<=s.length();i++){
    if(String.valueOf(s.charAt(i)).equals("@")){
    break;
    }
    br.append(s.charAt(i));
    }
    System.out.println(br);
    }
    }
      

  15.   

    再贴一个好点的
    这里用到是正则表达式的捕获组import java.util.regex.Matcher;
    import java.util.regex.Pattern;public class GetEmailName { public static void main(String[] args) {
    String str = "[email protected]";
            String result = "";
             
            Pattern pattern = Pattern.compile("^([a-z0-9]+(.[_a-z0-9-]+)*)@[a-z0-9-]+(.[a-z0-9-]+)*$");
            Matcher matcher = pattern.matcher(str);
            
            if(matcher.find())
             System.out.println(matcher.group(1));
    }}
      

  16.   

    int index=ss.indexof("@");
    String s=ss.subString(0,index);
      

  17.   

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    String str = "[email protected]";
           Pattern pa = Pattern.compile(".*(?=@)");
           Matcher matcher = pa.matcher(str);
           while (matcher.find()) {
    System.out.println(matcher.group());

    }
    }