2013-02-10 83 views
11

我想找到一個字符串的最後一個字符位置,然後放入一個IF,說明如果最後一個字符的位置等於A B或C,那麼做一個特定的動作。我如何獲得最後的角色位置?如何使用C#獲取字符串中子字符串的最後一個字符位置?

編輯: 例如: stringMain =「嗨,這是羅伯特!」 subString =「this」 現在,我想要在stringMain中找到s(s的位置)。

+2

最後的字符位置......是不是隻是'長度1'? – spender 2013-02-10 03:04:05

+1

請閱讀有關'String'類的文檔,地址爲:http://msdn.microsoft.com/en-us/library/system.string.aspx – 2013-02-10 03:04:32

+0

如果您從VB來到C#,您可能會發現「C#&VB.NET轉換「很有幫助。 http://www.amazon.com/gp/product/0596003196/ref=oh_details_o02_s00_i00 – John 2013-02-10 03:25:54

回答

8

我以爲你不真正想要的最後一個字符位置(這將是yourString.Length - 1),但最後一個字符本身。你可以發現,通過與最後一個字符位置索引字符串:

yourString[yourString.Length - 1] 
5

stringzero based陣列的char

char last_char = mystring[mystring.Length - 1]; 

至於問題的第二部分,如果char是ABC

使用if statement

char last_char = mystring[mystring.Length - 1]; 
if (last_char == 'A' || last_char == 'B' || last_char == 'C') 
{ 
    //perform action here 
} 

使用switch statement

switch (last_char) 
{ 
case 'A': 
case 'B': 
case 'C': 
    // perform action here 
    break 
} 
+0

'if'看起來會更好,因爲'switch',imo。 – oscilatingcretin 2013-02-10 03:20:58

+0

我只是寫作開關,但有問題需要if語句! – 2013-02-10 03:21:52

7

我喜歡使用LINQ:

YourString.Last()

你需要導入System.Linq命名空間,如果你還沒有它。儘管如此,我不會導入命名空間來使用.Last()。

+0

可能不是最快的,但絕對有趣。 – John 2013-02-10 03:23:10

相關問題