2017-10-11 122 views
0

我收到一組單詞作爲輸出,是否有任何方式從該組中獲取電子郵件ID。 我的輸出將是這樣的。從單詞組中獲取電子郵件ID的最佳方式是什麼?

拉克什曼庫馬爾,d/NO:45/24/D4,USA,Android應用devoloper,拉克什曼卡@ gmail.com

+0

通過昏迷(,)分割您的值並獲取您的字符串 –

+0

我通過掃描名片來獲取輸出結果我能夠通過昏迷分割值,但我無法獲取我想要的確切單詞,因爲我是在某些輸出中獲得隨機輸出郵件編號將位於第二位一些它將在第四的位置有什麼方法來獲取郵件ID,可能在我的輸出中。 –

回答

0

嘗試此。

String response = "Lakshman Kumar,D/no:45/24/d4,USA,Android app devoloper,[email protected]"; 
String[] strings = response.split(","); 
String email = strings[strings.length - 1]; 
Log.e("TAG", email); 

注意

  • 使用split在你的代碼
  • 使用strings[strings.length - 1]獲取電子郵件的價值
0

如果有一個或多個電子郵件地址,分裂文字和匹配電子郵件的模式如下:

String[] tokens = yourText.split(","); 
for (String token : tokens) { 
    if (Patterns.EMAIL_ADDRESS.matcher(token).matches()) { 
     String email = token; 
     //use this email 
    } 
} 
0

你需要使用正則表達式從文本中提取電子郵件ID這樣

Pattern p = Pattern.compile("\\b[A-Z0-9._%+-][email protected][A-Z0-9.-]+\\.[A-Z]{2,4}\\b", 
    Pattern.CASE_INSENSITIVE); 
    Matcher matcher = p.matcher("your text will be here "); 
    Set<String> emails = new HashSet<String>(); 
    while(matcher.find()) { 
     emails.add(matcher.group()); 
} 
0

,如果你確信「@」永遠只電子郵件地址內部使用,你可以這樣做:

String output = "Lakshman Kumar,D/no:45/24/d4,USA,Android app devoloper,[email protected]"; 
public String getEmail(){ 

    // Splitting your output by ',' 
    String[] splittedOutput = output.split(","); 

    for (String s : splittedOutput){ 

     // Checking to see if '@' exists in string 
     if (s.indexOf("@") >= 0){ 
      return s; 
     } 
    } 

    return "email not found"; 
} 
相關問題