C#String常用方法


String常用類

字符串判斷

  C#中有2種字符串判斷,

    1. ==

    2. 字符串對象.Equals(要比較的字符串);

提取(截取)字符串

  subString(起始位置); -->從起始位置到末尾

  subString(起始位置,長度);

字符串修剪

  字符串對象.Trim() -->去除空格

  字符串對象.Tirm('去除左右兩邊的字符');

字符串轉大小寫

  字符串對象.ToUpper();

  字符串對象.ToLower();

拆分字符串

  字符串對象.Split('拆分的字符');  返回值:String[]

合並字符串

  String.Join('進行連接的字符',字符串數組)

獲取字符下標

  字符串對象.IndexOf('字符')  -->獲取第一個出現的下標

  字符串對象.LastIndexOf('字符') -->獲取最后一個字符的下標

 字符串優化

頻繁處理字符串需要使用:StringBuilder

  常用方法:

    1. Append()       -->拼接

    2. AppendFormat()   -->處理占位符

    3. AppendLine()   -->拼接完會換行    

    4. Insert(位置,插入的內容) -->插入

案例一

 從控制台輸入一個郵箱,

1、驗證郵箱的格式是否正確(包含.包含@ @必須在點之前)

2、輸出郵箱的用戶名和域名

 1 //從控制台輸入一個郵箱,
 2             //控制台輸入
 3             Console.Write("請輸入你的郵箱:");
 4             String email = Console.ReadLine();
 5             //1、驗證郵箱的格式是否正確(包含.包含@ @必須在點之前)
 6             int indexDian = email.IndexOf('.');
 7             int indexAnDe = email.IndexOf('@');
 8             if (indexDian == -1 || indexAnDe == -1)
 9             {
10                 Console.WriteLine("請輸入正確的郵箱格式!");
11             }
12             else if (indexDian <= indexAnDe)
13             {
14                 Console.WriteLine("@必須在點之前");
15             }
16             else
17             {
18                 //2、輸出郵箱的用戶名和域名  123@qq.com
19                 int index = email.IndexOf('@');
20                 String name = email.Substring(0, index);
21 
22                 String yuMing = email.Substring(index+1);
23 
24                 Console.WriteLine("用戶名:{0}",name);
25                 Console.WriteLine("域名:{0}",yuMing);
26             }
27             //防止一閃而過
28             Console.ReadLine();

 

 

案例二

 

 

 

 

 1       while (true)
            {
                //控制台輸入信息
                Console.Write("請輸入身份證:");
                String id = Console.ReadLine();

                Console.Write("請輸入手機號:");
                String phone = Console.ReadLine();

                Console.Write("請輸入座機號:");
                String landline = Console.ReadLine();
                //身份證必須是16-18位
                if (!(id.Length == 16 || id.Length == 18))
                {
                    Console.WriteLine("身份證號必須是16或十八位");
                    continue;
                }
                //手機號必須是11位
                if (!(phone.Length == 11))
                {
                    Console.WriteLine("手機號必須是11位");
                    continue;
                }
                //座機區號必須4位,電話號碼必須7位
                String[] number = landline.Split('-');
                String num1 = number[0];
                String num2 = number[1];
                if (!(num1.Length == 4) && !(num2.Length == 7))
                {
                    Console.WriteLine("座機區號必須4位,電話號碼必須7位");
                    continue;
                }

                Console.WriteLine("注冊成功");
                break;
            }
            Console.ReadLine();

 案例三

從控制台輸入姓名的拼音,拼音中間使用空格隔開,如waNG li li
在控制台上輸出WangLiLi(每個拼音的首字母大寫,后面小寫)

 1             //控制台輸入
 2             Console.Write("請輸入姓名拼音:");
 3             String name = Console.ReadLine();
 4             //字符串拆分
 5             String[] names = name.Split(' ');
 6             //循環
 7             foreach (String nameSplit in names)
 8             {
 9                 String nameFirst = nameSplit.Substring(0, 1);
10                 String nameLast = nameSplit.Substring(1);
11                 Console.Write(nameFirst.ToUpper()+nameLast.ToLower());
12             }
13             //防止一閃而過
14             Console.ReadLine();

 

輸入:zhang san

輸出:ZhangSan

 案例四

使用StringBuilder完成插入,控制台輸入一串數字,每隔三個位置插入一個,

 

 

 1     //控制台輸入數字 12345678
 2      //結果: 12,345,678
 3             //控制台接收數據
 4             Console.Write("請輸入一串數字:");
 5             String num = Console.ReadLine();
 6             //StringBuilder
 7             StringBuilder sb = new StringBuilder();
 8             sb.Append(num);
 9             //循環
10             for (int i = num.Length - 3; i > 0; i -= 3)
11             {
12                 //插入,
13                 sb.Insert(i, ',');
14             }
15             Console.WriteLine(sb.ToString());
16 
17             //防止一閃而過
18             Console.ReadLine();    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM