【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
留言分享你的想法!
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
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 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