【C#編程教學】- 改進你String 的技巧 – String 用法全參考(一)

更新 發佈閱讀 13 分鐘
raw-image
Title 1: 【C#教學】- 插入, 移除, 取代 - Insert, Remove, Replace
在本文中,我將向你展示c#程式設計的3個技巧, 就是把string字串進行插入, 移除, 取代的方法。


以下為String.Insert(Int32, String) , 在字串中插入文字的方法:
String.Insert("從第幾個字開始加入", "加入的字串"):
```
string str = "I can fly";
Console.WriteLine(str.Insert(2,"believe I "));
//結果: I believe I can fly
```


以下為String.Remove(Int,Int) , 在字串中移除文字的方法:
String.Remove("從第幾個開始移除", 移除多少字元):
```
string str = "I believe I can fly";
Console.WriteLine(str.Remove(2, 10));
//結果: I can fly
```


以下為String.Replace() , 取代字串的方法:
String.Replace(String)
String.Replace(取代的字串目標,新的字串)
```
string str = "I am sure I can fly";
string strResult = str.Replace("am sure", "believe");
Console.WriteLine(strResult);
//結果: I believe I can fly
```


以下為Regex.Replace() , 取代字串 (忽略大小寫)的方法:
Regex.Replace(String, String , String, RegexOptions.IgnoreCase);
Regex.Replace(輸入字串, 取代的字串目標,新的字串, RegexOptions.IgnoreCase);
```
string str = "I am sure I can fly";
string strResult = Regex.Replace(str, "AM SURE", "believe", RegexOptions.IgnoreCase);
Console.WriteLine(strResult);
//結果: I believe I can fly
```


Title 2: 【C#教學】- 移除空白, 補上空白string字串 - Trim, TrimStart, TrimEnd, PadLeft, PadRight
在本文中,我將向你展示c#程式設計的2個技巧, 就是把string字串移除空白或補上空白的方法。

移除空白
以下為String.Trim() , 移除字串兩邊的空白的方法:
```
string str = " $10000 ";
string strResult = str.Trim();
Console.WriteLine(strResult);
//結果: "$10000"
```


以下為String.TrimStart() , 移除字串開頭的空白的方法:
```
string str = " $10000 ";
string strResult = str.TrimStart();
Console.WriteLine(strResult);
//結果: "$10000 "
```


以下為String.TrimEnd () , 移除字串結尾的空白的方法:
```
string str = " $10000 ";
string strResult = str.TrimEnd();
Console.WriteLine(strResult);
//結果: " $10000"
```


補上空白
以下為String.PadLeft(Int32), 為字串左邊補上空白的方法:
String.PadLeft(字串總數包括補上的空白格)
```
string str = "$10000";
string strResult = str.PadLeft(10);
Console.WriteLine(strResult);
//結果: " $10000"
```


以下為String.PadRight(Int32), 為字串右邊補上空白的方法:
String.PadRight(字串總數包括補上的空白格)
```
string str = "$10000";
string strResult = str.PadRight(10);
Console.WriteLine(strResult);
//結果: "$10000 "
```


以下為String.PadLeft(Int32, char), 為字串左邊補上字元的方法:
String.PadLeft(字串總數包括補上的空白格)
```
string str = "$10000";
string strResult = str.PadLeft(10, '-');
Console.WriteLine(strResult);
//結果: "----$10000"
```


以下為String.PadRight(Int32, char), 為字串右邊補上字元的方法:
String.PadRight(字串總數包括補上的空白格)
```
string str = "$10000";
string strResult = str. PadRight(10, '-');
Console.WriteLine(strResult);
//結果: "$10000----"
```


Title 3: 【C#教學】- 轉換string字串成大小寫
在本文中,我將向你展示c#程式設計的2個技巧, 就是把string字串轉換成大寫或小寫方法。

以下為String.ToUpper(), 把string字串轉換成大寫的方法:
```
string str = "I believe I can fly";
string strResult = str. ToLower();
Console.WriteLine(strResult);
//結果: i believe i can fly
```


以下為String.ToUpper(), 把string字串轉換成小寫的方法:
```
string str = "I believe I can fly";
string strResult = str.ToUpper();
Console.WriteLine(strResult);
//結果: I BELIEVE I CAN FLY
```


Title 4: 【C#教學】- string字串合併分割
在本文中,我將向你展示c#程式設計的2個技巧, 就是把string字串進行成合併或分割。

字串合併
以下為String.Join(String, String[]), 將字串維度合併的方法:
String.Split(中間字串, 合併字串維度)
```
string[] strs = new string[]{"I believe", "I can fly"};
string strResult = String.Join(" ", strs);
Console.WriteLine(strResult);
//結果: I BELIEVE I CAN FLY
```


以下為String.Split(char), 將字串用字元(char, 非string字串)分割:
String.Split('用來分割的字元')
```
string str = "I believe !I can fly";
string[] strResult = str.Split('!');
foreach (var item in strResult)
Console.WriteLine(item);
//結果:
//I believe
//I Can fly
```

將字串分割
以下為Regex.Split(String, String), 將字串用string字串分割:
Regex.Split(分割字串對象,"用來分割的字串")
```
string str = "I believe that I can fly";
string[] strResult = Regex.Split(str, " that ");
foreach (var item in strResult)
Console.WriteLine(item);
//結果:
//I believe
//I Can fly
```


Title 5: 【C#教學】- 在string字串前加「@」或「$」, 了解兩者的意思及用法。

在本文中,我將向你展示c#程式設計的2個技巧, 就是在string字串前加「@」或「$」, 這應該可以令編程更容易。

1. 在string字串前加「@」的意思及用法
2. 在string字串前加「$」的意思及用法


在string字串前加「@」的意思及用法

若果不加「@」的話, 如果string內包含Blackslash 「\」的話 , 就必須用Escape Character「\\」表示。
但若在string字串前加「@」包含Blackslash 「\」, 不用Escape Character「\\」, 如下例:
```
string str = "c:\\temp"
//等如
string str = @"c:\temp"
```

其他的例子還有:

Description
Escape character
Single quote (')
\'
Double quote(")
\"
Backslash(\)
\\

在string字串前加「$」的意思及用法

從C#6.0開如, C# 以「$」簡化了string.format 的用法, 以下為一個例子:

用string.format的話, 會比較麻煩:
```
var lastName = "間";
var firstName = "碟";
var codeNo = "007";
var result = string.format("我姓{0}, 名{1}, 編號{2}", lastName, firstName, codeNo);
Console.WriteLine(result);
```

結果如下:
```
我姓間, 名碟, 編號007
```

用「$」的話, 就簡化了很多:
```
var lastName = "間";
var firstName = "碟";
var codeNo = "007";
var result = $"我姓{ lastName }, 名{firstName}, 編號{codeNo}";
Console.WriteLine(result);
```

結果如下:
```
我姓間, 名碟, 編號007
```

Source: https://jprogramstudy.com/

留言
avatar-img
Johnny Lam的沙龍
9會員
14內容數
ChatGPT Prompt - 以創意的方式, 顥示ChatGPT的使用方法, 希望可以由小孩, 大人, 老年人也明的例子來說明白.
Johnny Lam的沙龍的其他內容
2023/05/15
辨公室系統自動化 – Power Automate, ChatGPT的出現, 作為IT人當然要知一二, 以下內容提供十種自動化工具, 以及多個案例供參考, 希望幫到大家. 定義 以我個人的定義, IT人在Inhouse中, 是透過IT的知識, 資源來幫助其他部門, 例如在其他部門下, 根據他們的專業
Thumbnail
2023/05/15
辨公室系統自動化 – Power Automate, ChatGPT的出現, 作為IT人當然要知一二, 以下內容提供十種自動化工具, 以及多個案例供參考, 希望幫到大家. 定義 以我個人的定義, IT人在Inhouse中, 是透過IT的知識, 資源來幫助其他部門, 例如在其他部門下, 根據他們的專業
Thumbnail
2022/11/07
Covid-19 在這近幾年流行, 各國為了加強防疫, 把境內外的聯繫限制起來, 令我們出入境也不方便. 在大家都被迫要暫時留在境內的日子裏, 不能出外, 相信也有一點悶納了. 隨著全民感染的意識提高, 最近日本, 新加坡等各國也降低了防疫標準, 讓大家多了機會可出國. 而既然有機會出國, 當然是想
Thumbnail
2022/11/07
Covid-19 在這近幾年流行, 各國為了加強防疫, 把境內外的聯繫限制起來, 令我們出入境也不方便. 在大家都被迫要暫時留在境內的日子裏, 不能出外, 相信也有一點悶納了. 隨著全民感染的意識提高, 最近日本, 新加坡等各國也降低了防疫標準, 讓大家多了機會可出國. 而既然有機會出國, 當然是想
Thumbnail
2022/11/06
組合格:"組合格是一種創新方法, 把兩項或多項事物組合起來而得到新的意念。而所謂的事物,可以是具體事物, 或字詞概念, 或思想觀念等抽象事物的組合。" 很多時我們在創新時, 會腦袋閉塞, 產生不出新意念. 組合格為把用戶的目標對象, 和不同的概念放在一起, 供用戶聯想. 希望可以幫助用戶把自己的目標
Thumbnail
2022/11/06
組合格:"組合格是一種創新方法, 把兩項或多項事物組合起來而得到新的意念。而所謂的事物,可以是具體事物, 或字詞概念, 或思想觀念等抽象事物的組合。" 很多時我們在創新時, 會腦袋閉塞, 產生不出新意念. 組合格為把用戶的目標對象, 和不同的概念放在一起, 供用戶聯想. 希望可以幫助用戶把自己的目標
Thumbnail
看更多
你可能也想看
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
題目敘述 Minimum Deletions to Make String Balanced 給定一個只會有包含'a'b或'b'的輸入字串s。 每次操作可以任選一個字元刪除。 請問最少需要多少次操作,才會使得所有的'b'都在'a'後面? 測試範例 Example 1: Input: s
Thumbnail
題目敘述 Minimum Deletions to Make String Balanced 給定一個只會有包含'a'b或'b'的輸入字串s。 每次操作可以任選一個字元刪除。 請問最少需要多少次操作,才會使得所有的'b'都在'a'後面? 測試範例 Example 1: Input: s
Thumbnail
題目敘述 題目會給我們一個字串s。 要求我們移除字串中的星號,還有刪除星號左手邊最靠近的第一個字元。 以字串的形式返回輸出答案。 題目的原文敘述 測試範例 Example 1: Input: s = "leet**cod*e" Output: "lecoe" Explanation:
Thumbnail
題目敘述 題目會給我們一個字串s。 要求我們移除字串中的星號,還有刪除星號左手邊最靠近的第一個字元。 以字串的形式返回輸出答案。 題目的原文敘述 測試範例 Example 1: Input: s = "leet**cod*e" Output: "lecoe" Explanation:
Thumbnail
題目敘述 題目會給我們一個字串s作為輸入,要求我們以white space空白為切割符號,切割出每個單字,並且反轉其順序後,以字串形式最為最後的輸出。 題目的原文敘述 測試範例 Example 1: Input: s = "the sky is blue" Output: "blue i
Thumbnail
題目敘述 題目會給我們一個字串s作為輸入,要求我們以white space空白為切割符號,切割出每個單字,並且反轉其順序後,以字串形式最為最後的輸出。 題目的原文敘述 測試範例 Example 1: Input: s = "the sky is blue" Output: "blue i
Thumbnail
題目敘述 題目會給定我們兩個字串word1 和 word2。 允許我們不限制次數進行下列兩種操作: 任意調換其中兩個字元的位置。 把字串中的某個字元全部置換成另一個字元,同時把另一個字元同時置換成某個字元。(例如把字串中原本的a都換成b,把原本的b都換成a) 問我們能不能通過上述兩項操作,
Thumbnail
題目敘述 題目會給定我們兩個字串word1 和 word2。 允許我們不限制次數進行下列兩種操作: 任意調換其中兩個字元的位置。 把字串中的某個字元全部置換成另一個字元,同時把另一個字元同時置換成某個字元。(例如把字串中原本的a都換成b,把原本的b都換成a) 問我們能不能通過上述兩項操作,
Thumbnail
Basic python data structure
Thumbnail
Basic python data structure
Thumbnail
題目:完成解決方案,當第一個參數(String 型別)以第二個參數結尾時(也是 String 型別)返回 true。
Thumbnail
題目:完成解決方案,當第一個參數(String 型別)以第二個參數結尾時(也是 String 型別)返回 true。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News