Java獲取字串中某個字串第一次出現的位置(索引)
今天工作,需要將一串資訊,包括使用者名稱、密碼、郵箱的字串,將使用者名稱和郵箱截取出來。
原字串為:yulv # 123456 # [email protected]
此處用Matcher和Pattern類會非常簡單,這兩個類是利用正則表示式匹配查詢的相關類,詳細可以參見java Pattern和Matcher詳解
我的程式碼如下:
public class MatcherTest {
public static void main(String[] args) {
String str = "yulv # 123456 # [email protected] ";
Matcher matcher=Pattern.compile("#").matcher(str);
if(matcher.find()){
System.out.println(matcher.start());
}else{
System.out.println("null");
}
//String receiverName=str.substring(0,matcher.start()).trim();
//System.out.println(receiverName);
}
}
注意,一定不要忽略matcher.find()方法,雖然if為了做判斷,但是find方法也是有執行過程的。如果沒有這個find方法,則並沒有在字串中查詢,所以一定會出現類似空指標的異常。