簡體   English   中英

如何分隔長度未知的字符串?

[英]How do I separate a string with an unknown length?

我正在編寫一個程序,該程序根據用戶輸入的名稱具有不同的輸出。 輸出的格式由第一個字母決定,其余的名稱將始終使用,但不包括第一個字母。 從本質上講,我如何制作一個子字符串,使其遵循以下內容?

 Console.WriteLine("What name would you like to use?(please enter in lower case)");
        name = Console.ReadLine();
        namelength = name.Length;
        letter = name.Substring(0);
        restofname = name.Substring(1, namelength);

您可以這樣實現:

Console.WriteLine("What name would you like to use?(please enter in lower case)");
    name = Console.ReadLine();
    letter = name.Substring(0, 1);
    restofname = name.Substring(1);

希望這可以幫助:

   Console.WriteLine("What name would you like to use?(please enter in lower case)");
    string name = Console.ReadLine();
    string letter = name.Length > 0 ? name.Substring(0, 1): string.Empty;       
    string restofname = string.IsNullOrEmpty(letter) ? string.Empty : name.Substring(1);
    Console.WriteLine(restofname);

String是字符數組,因此您可以使用索引訪問它

char letter = name[0];

但是您應該檢查字符串的長度是否大於0或為空,因此您的代碼應如下所示

if(!string.IsNullOrEmpty(name) && name.Length>1)
{
   char letter = name[0];
   ......   
}

我使用過name.Length > 1因為如果name為1個字符,那么您就沒有剩下的名字或第二部分了,第二部分可以像

string restofname = name.Substring(1, name.Length);

如果您像上面那樣擁有其余的名字,那么您就不必引入額外的變量了,這樣更易​​於維護。 :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM