• C#string常用函数总结


    补充:吐舌鬼脸

                1:在C语言里 char占1个字节 而在C#,Java里char占两个字节 数据库里char 中汉占两个字节 字母数字占一个字

                2:string是c#中的类,String是.net Framework的类 string是关键字,也就是说string不能作为类、结构、枚举、字段、变量、方法、属性的名称,而String可以

    一:  string是引用类型

    但是当一个string类型的参数赋值给另一个参数时,只给了值,而不是地址,因为它保留在堆上,而不是堆栈上

    namespace Stringop
    {
        class Program
        {
            static void Main(string[] args)
            {
                string str1 = "lipeng";
                string str2 = str1;
    
                Console.WriteLine("str1=" + str1);
                Console.WriteLine("str2=" + str2);
    
                str1 = "newlipeng";
    
                Console.WriteLine("str1=" + str1);
                Console.WriteLine("str2=" + str2);
    
            }
    
        }
    }

    二:常用函数

    1.all

    //all函数   
                //确定序列中的所有元素是否满足条件。
                bool isSure = str1.All(p => p > 'b');
    
                Console.WriteLine(isSure);

    2.CompareTo

    //CompareTo  
                //返回一个值,该值指示指定的 System.String 对象是否出现在此字符串中。
                // 一个 32 位有符号整数,该整数指示此实例在排序顺序中是位于 value 参数之前、之后还是与其出现在同一位置。值条件小于零此实例位于 str2
                //     之前。零此实例在排序顺序中的位置与 str2 相同。大于零此实例位于 str2 之后。- 或 -str2 为 null。
                str2 = "newlipenaa";
                int lp = str1.CompareTo(str2);
    
                Console.WriteLine(lp);

    3.Contains

    //Contains 
                //返回一个值,该值指示指定的 System.String 对象是否出现在此字符串中。
                bool isContain = str1.Contains("a");
    
                Console.WriteLine(isContain);

    4.Count

    //Count
                //返回一个数字,表示在指定的序列中满足条件的元素数量。
                int count = str1.Count(p => p == 'e' || p == 'l');
    
                Console.WriteLine(count);

    5.IndexOf

    //IndexOf 
                //报告指定 Unicode 字符在此字符串中的第一个匹配项的索引。
                int index = str1.IndexOf('a');
    
                Console.WriteLine(index);
    
                string strs = str1.Substring(1, 3);
    
                Console.WriteLine(strs);

    6.Split

    //Split  
                //返回的字符串数组包含此实例中的子字符串(由指定 Unicode 字符数组的元素分隔)。
                string[] lsStr = str1.Split(new char[] { ',', 'e' });
    
                foreach (string a in lsStr)
                {
                    Console.WriteLine(a);
                }

    7.Trim 和TrimEnd

    //Trim     
                //从当前 System.String 对象移除所有前导空白字符和尾部空白字符。
                //TrimEnd     
                //从当前 System.String 对象移除数组中指定的一组字符的所有尾部匹配项。
                string strspace = "   aaa  s";
    
                Console.WriteLine(strspace);
                Console.WriteLine(strspace.Trim());
                Console.WriteLine(strspace.TrimEnd('s'));

    8.PadLeft

    //PadLeft 
                //返回一个新字符串,该字符串通过在此实例中的字符左侧填充指定的 Unicode 字符来达到指定的总长度,从而使这些字符右对齐。
                string padstr = str1.PadLeft(20, 'a');
    
                Console.WriteLine(padstr);

    9.Replace

    //Replace     
                //返回一个新字符串,其中此实例中出现的所有指定 Unicode 字符都替换为另一个指定的 Unicode 字符。
                string replacestr = str1.Replace('a', 'h');
    
                Console.WriteLine(replacestr);

    10.Equals

    //Equals    
                //确定此实例是否与另一个指定的 System.String 对象具有相同的值。
                bool isequal = str1.Equals(replacestr);
    
                Console.WriteLine(isequal);

    11.ToUpper

               //ToUpper   
               //返回此字符串转换为大写形式的副本。
                string upstr1 = str1.ToUpper();
    
               Console.WriteLine(upstr1);
     

    三:可变字符串StringBuilder

          StringBuilder建立的对象可操作性更强:

           经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后, 那速度是一定会相当慢的。而如果是使用 StringBuffer 类则结果就不一样了,每次结果都会对 StringBuilder对象本身进行操作,而不是生成新的对象,再改变对象引用。所以在一般情况下推荐使用 StringBuilder,特别是字符串对象经常改变的情况下。

               简单例子

                 StringBuilder sber = new StringBuilder();
                //最加字符串  ouput:  lipeng,aaa,bbb
                sber.Append("lipeng,aaa,bbb");
    
                Console.WriteLine(sber);
    
                //移除li  ouput:  peng,aaa,bbb
                sber.Remove(0, 2);
    
                Console.WriteLine(sber);
    
                //获取长度   ouput:12
                int sberlength = sber.Length;
    
                Console.WriteLine(sberlength);
    
                //转化为string类型时就具有了string类型的方法
                 string lps = sber.ToString().Trim();

    四:其他知识点

    string类型的count和length结果是一样的 是string中char类型的个数  而string数组只能用一个计数器来记录个数 

  • 相关阅读:
    【笔记】Excel技巧—004 多用途的文档属性
    【原创】The solutional manual of the Verilog HDL: A Guide to Digital Design and Synthesis (2nd)—ch07I
    【笔记】Excel技巧—003 实用的Excel选项设置
    【笔记】Excel技巧—005 使用工作区文件
    【原创】The solutional manual of the Verilog HDL: A Guide to Digital Design and Synthesis (2nd)—ch07II
    【原创】The solutional manual of the Verilog HDL: A Guide to Digital Design and Synthesis (2nd)ch05
    【原创】The solutional manual of the Verilog HDL: A Guide to Digital Design and Synthesis (2nd)ch12
    【笔记】DE2 硬件和处理器范例2 External SRAM interface (DE2)(digital logic)(verilog hdl)
    【笔记】Excel技巧—006 选取单元格区域
    【原创】The solutional manual of the Verilog HDL: A Guide to Digital Design and Synthesis (2nd)ch06
  • 原文地址:https://www.cnblogs.com/lipeng0824/p/4339821.html
Copyright © 2020-2023  润新知