C# 字串操作方法
C#中字串相關方法
C# 字串處理
字串修剪(Trim)
移除字串首尾的空白字符。
1 | string fullName = "Mosh Hamedani "; |
轉換大寫(ToUpper)
將字串轉換為大寫。
1 | string upperName = fullName.ToUpper(); |
字串分割(Split)
將字串依指定字符分割成數個子字串。
1 | string[] names = fullName.Split(' '); |
字串替換(Replace)
替換字串中的特定字符或子字串。
1 | string replacedName = fullName.Replace("Mosh", "Moshfegh"); |
檢查空白或空值(IsNullOrWhiteSpace)
檢查字串是否為 null、空字串或僅包含空白字符。
1 | bool isNullOrEmpty = string.IsNullOrWhiteSpace(fullName); |
數字與字串轉換
字串轉數字(Convert.ToInt32、byte.Parse)
將字串轉換為整數。
1 | int age = Convert.ToInt32("25"); |
數字轉字串(ToString)
將數字轉換為字串,支持格式化。
1 | double price = 29.95; |
C# 中的 StringBuilder
在 C# 的世界裡,string
類別的不可變特性是眾所周知的:一旦創建了一個字串物件,你就無法改變其內容。這種特性在處理大量字串操作時可能會導致效能問題。這時候,StringBuilder
就派上了用場。
為何選擇 StringBuilder
StringBuilder
是在 System.Text
命名空間下定義的一個類別,它代表一個可變的字串。使用 StringBuilder
可以輕鬆且快速地創建和修改字串,而不需要擔心不可變字串所帶來的效能問題。
StringBuilder
的特點
- 可變性:與
string
不同,StringBuilder
允許你在不創建新實例的情況下修改字串內容。 - 非優化搜尋:
StringBuilder
沒有搜尋操作(如IndexOf
、LastIndexOf
、Contains
等)進行優化。 - 字串操作方法:
StringBuilder
提供了一系列實用的方法來操作字串,例如Append
、Insert
、Remove
、Replace
和Clear
等。
StringBuilder
實例
以下是使用 StringBuilder
的一些示例:
創建和追加字串
1 | StringBuilder sb = new StringBuilder(); |
插入字串
1 | sb.Insert(7, "C# "); |
移除字串片段
1 | sb.Remove(5, 7); |
替換字串內容
1 | sb.Replace("world", "StringBuilder"); |
清空 StringBuilder
內容
1 | sb.Clear(); |
StringBuilder
是處理大量字串操作時的一個強大工具。它讓字串的創建和修改變得既容易又高效,尤其適合在需要頻繁修改字串內容的場景中使用。
請記住,雖然 StringBuilder
在某些情境下提供了顯著的效能優勢,但它並不適合所有情況。特別是當涉及到需要頻繁進行字串搜尋操作時,傳統的 string
類別可能是更好的選擇。