博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c#对字符串的各种操作
阅读量:5885 次
发布时间:2019-06-19

本文共 4017 字,大约阅读时间需要 13 分钟。

  hot3.png

1.字符串定义
2.在字符串后面追加字符串
3.获取字符串长度
4.截取字符串的一部分
5.字符串转为比特码
6.查指定位置是否为空字符
7.查字符串是否是标点符号
8.截头去尾(Trim)
9.替换字符串
10.得到用单个字符串分隔字符串单元
11.得到用多个字符分隔字符串单元
12.得到用字符串分隔字符串单元
13.int转字符串的格式
14.在字符串中插入‘-’的3种方法
15.字符串用下标访问字符
16.拆分字符串
17.匹配索引
18.大小写转换
19.填充对齐
20.插入和删除(Insert和Remove)
21.格式化(静态方法Format)
22.连接成一个字符串(静态方法Concat、静态方法Join和实例方法StringBuilder.Append)
23.比较字符串
24.字符串遍历
25.Int32.Parse() 与 Int32.TryParse() 与 Convert.ToInt32()的区别

//1.字符串定义

        string str = "tes";

       

 //2.在字符串后面追加字符串

        str += "t";

        

//3.获取字符串长度

        int strLength = str.Length;

       

 //4.截取字符串的一部分Substring(起始位置,截取位数)

        string s1 = str.Substring(0,2);

        

//5.字符串转为比特码

        byte[] bytStr = System.Text.Encoding.Default.GetBytes(str);

       

 //6.查指定位置是否为空字符IsWhiteSpace(字符串变量,位数)

        char.IsWhiteSpace(str, 3);

       

 //7.查字符串是否是标点符号IsPunctuation('字符')

        char.IsPunctuation('A');

       

 //8.截头去尾(Trim)

        string str = "__AB__CD__";
        str.Trim('_'); // 移除字符串中头部和尾部的'_'字符,输出"AB__CD"
        str.TrimStart('_'); // 移除字符串中头部的'_'字符,输出"AB__CD__"
        str.TrimEnd('_'); // 移除字符串中尾部的'_'字符,输出"__AB__CD"

        

//9.替换字符串或字符

        string str="你好da";
        str = str.Replace("你","他");
        str = str.Replace('a', 'b');
        

//10.得到用单个字符串分隔字符串单元

        string str="aaa,bbb,ccc";
        string[] sArray = str.Split(',');
        

//11.得到用多个字符分隔字符串单元   得到以'j'或's'分隔的各个字符串

        string str = "aaajbbbscccjdddseee";
        string[] sArray = str.Split(new char[2] { 'j', 's' });
        

//12.得到用字符串分隔字符串单元   得到以'js’分隔的各个字符串

        string str = "aaajsbbbjsccc";
        string[] sArray = Regex.Split(str, "js", RegexOptions.IgnoreCase);
        

//13.int转字符串的格式

        12345.ToString("n");//生成12,345.00   自动加千分符
        12345.ToString("C");//生成¥12,345.00
        12345.ToString("e");//生成1.234500e+004
        12345.ToString("f4");//生成12345.0000
        12345.ToString("x");//生成3039(16进制)
        12345.ToString("p");//生成1,234,500.00%
       

 //14.在字符串中插入‘-’的3种方法

        string str = "123456789";
        str = int.Parse(a).ToString("##-###-####");
        string str = "123456789";
        str = str.Insert(5,"-").Insert(2,"-");
        string str="123456789";
        Regex reg = new Regex(@"^(d{2})(d{3})(d{4})$");
        str = reg.Replace(str,"$1-$2-$3");
        

//15.字符串用下标访问字符

        char c = str[0];
        

//16.拆分字符串

        char[] arr = str.ToCharArray();
        

//17.匹配索引

        str = "ABCABCD";
        str.IndexOf('A'); // 从字符串头部开始搜索第一个匹配字符A的位置索引,输出"0"
        str.IndexOf("BCD"); // 从字符串头部开始搜索第一个匹配字符串BCD的位置,输出"4"
        str.LastIndexOf('C'); // 从字符串尾部开始搜索第一个匹配字符C的位置,输出"5"
        str.LastIndexOf("AB"); // 从字符串尾部开始搜索第一个匹配字符串BCD的位置,输出"3"
        str.IndexOf('E'); // 从字符串头部开始搜索第一个匹配字符串E的位置,没有匹配输出"-1";
        str.Contains("ABCD"); // 判断字符串中是否存在另一个字符串"ABCD",输出true
       

 //18.大小写转换

        str.ToLower(); // 转化为小写
        str.ToUpper(); // 转化为大写
       

 //19.填充对齐

        str = "ABCD";
        str.PadLeft(6, '_'); // 使用'_'填充字符串左部,使它扩充到6位总长度,输出"__ABCD"
        str.PadRight(6, '_'); // 使用'_'填充字符串右部,使它扩充到6位总长度,输出"ABCD__"
       

 //20.插入和删除(Insert和Remove)

        str = "ADEF";
        str.Insert(1, "BC"); // 在字符串的第2位处插入字符串"BC",输出"ABCDEF"
        str.Remove(1); // 从字符串的第2位开始到最后的字符都删除,输出"A"
        str.Remove(0, 2); // 从字符串的第1位开始删除2个字符,输出"EF"
       

 //21.格式化(静态方法Format)

        string.Format("{0} + {1} = {2}", 1, 2, 1 + 2);
        string.Format("{0} / {1} = {2:0.000}", 1, 3, 1.00 / 3.00);
        string.Format("{0:yyyy年MM月dd日}", DateTime.Now);
       

 //22.连接成一个字符串(静态方法Concat、静态方法Join和实例方法StringBuilder.Append)

        str = "A,B,C,D";
        string[] arr3 = str.Split(','); // arr = {"A","B","C","D"}
        string.Concat(arr3); // 将一个字符串数组连接成一个字符串,输出"ABCD"
        string.Join(",", arr3); // 以","作为分割符号将一个字符串数组连接成一个字符串,输出"A,B,C,D"
        StringBuilder sb = new StringBuilder(); // 声明一个字符串构造器实例
        sb.Append("A"); // 使用字符串构造器连接字符串能获得更高的性能
        sb.Append('B');
        sb.ToString();// 输出"AB"
        

//23.比较字符串  

        int result; //result值为“0”表示等,小于零表示 s1 < s2,大于零表示 s1 > s2 
    bool bresult; 
    string s1="aaaa"; 
    string s2="bbbb"; 
        result=String.Compare(s1,s2); 
    result=s1.CompareTo( s2 ); 
    result=String.CompareOrdinal(s1,s2);
        

//24.字符串遍历

    string str = "This is a test!";
    foreach (char myChar in str)
    {
    }
        

//25.Int32.Parse() 与 Int32.TryParse() 与 Convert.ToInt32()的区别

         //Int32.TryParse()性能优于Convert.ToInt32()优于Int32.Parse()。
        //他们都是将字符串强制转换为int32类型,当要转换的字符串为非空字符时他们三者的效果相同;
        //但要转换的字符串为null时会有区别如下实例
        string strint = null;
        int num = 0;
        Int32.Parse(strint);//会抛出异常;
        Convert.ToInt32(strint);//不会抛出异常,返回值为0;
        Int32.TryParse(strint, out num);//不会抛出异常,返回值为0,但当转换正确时返回的是true,否则返回false。

转载于:https://my.oschina.net/igames/blog/618991

你可能感兴趣的文章
gitlab 完整部署实例
查看>>
GNS关于IPS&ASA&PIX&Junos的配置
查看>>
影响企业信息化成败的几点因素
查看>>
SCCM 2016 配置管理系列(Part8)
查看>>
struts中的xwork源码下载地址
查看>>
ABP理论学习之仓储
查看>>
我的友情链接
查看>>
Tengine新增nginx upstream模块的使用
查看>>
CentOS图形界面和命令行切换
查看>>
HTML5通信机制与html5地理信息定位(gps)
查看>>
汽车常识全面介绍 - 悬挂系统
查看>>
加快ALTER TABLE 操作速度
查看>>
学习笔记之软考数据库系统工程师教程(第一版)
查看>>
PHP 程序员的技术成长规划
查看>>
memcached 分布式聚类算法
查看>>
jquery css3问卷答题卡翻页动画效果
查看>>
$digest already in progress 解决办法——续
查看>>
mysql 数据类型
查看>>
Ubuntu 设置当前用户sudo免密码
查看>>
ionic 调用手机的打电话功能
查看>>