2012-02-27 146 views
0

我有一個單一的標誌,我從字符串servername \ username獲取用戶名。服務器名稱可以是任意長度的。我需要獲取登錄用戶名。 我試圖更換反斜槓,拆分字符串,但它不成功。 任何建議如何我可以從字符串中提取用戶名。包含反斜槓的字符串

+0

你可以在這裏像字符串值= 「服務器名\用戶名」。做寫你的字符串比如你想從這個字符串的用戶名。 – Suresh 2012-02-27 07:34:11

回答

0

嘗試:

String userName = input.substring(input.indexOf("\\") + 1); 
6
String getUserName(String s) { 
    int i = s.indexOf('\\'); 
    return i == -1 ? s : s.subString(i + 1); 
} 
+0

謝謝喬伊, 解決方案爲我工作 – user1235038 2012-02-27 08:13:56

+0

對我來說非常棒的工作..謝謝 – 2014-08-07 05:51:33

4
String[] input = s.split("\\\\"); 
    if(input.length != 2){ 
     throw IllegalArguementException(); 
    } 
    String username = input[1]; 
    String server = input[0]; 
+1

'String.split'基於正則表達式。在正則表達式中,'\'是一個特殊字符,必須轉義。另外'\'是字符串文字中的特殊字符。它必須被第二次轉義。你必須使用''\\\\'''。 – 2012-02-27 09:21:06

+0

感謝您指出這個@ A.H。 – ManojGumber 2012-02-27 11:07:05

0
String[] inputarr= s.split("\\"); 
String username = input[1]; 
+0

'String.split'基於正則表達式。在正則表達式中,'\'是一個特殊字符,必須轉義。另外'\'是字符串文字中的特殊字符。它必須被第二次轉義。你必須使用''\\\\'''。 – 2012-02-27 09:22:39