您的位置:首页 > 编程语言 > C#

C#字符串的定义和使用

2013-10-25 12:57 211 查看
C#中的字符char和字符串string几乎说是差不多,但是有一点点的区别,

string(字符,次数)//这个是该字符串重复的次数,例如:s=new string('a',1000);//就是重复1000次

例如:char[] ch = new char[] { 'F','o','l','u','n','t' };

//输出的时候就是:Folunt   如果想要改变其中的一个字符,就使用ch=[0]='f';此时输出的结果是folunt   

而字符串其实就是“一串字符”,是字符就可以一个一个的访问;

数组里面可以通过访问修改,但是字符串是不能这样修改的:例如:str1[1]='为';是错误的;

string类型的字符串只能通过渐渐修改字符串的中间字符

例如:

string str ="我是一个字符串";

char[] ch=str.ToCharArray();

ch[1]='为';

str=new string(ch);

Console.WriteLine(str);

常见的字符串的用法:

    1:字符串大小写转换

        string<strName>.ToUpper();

        string<strName>.ToLower();

        例如:在等待用户输入的时候,常常不考虑用户输入的用户名大小(或一个程序中规定使用的大小写)

        可以将用户的输入全部转换成小写,或大写再来进行比较

        如:

        Console.WriteLine("请输入用户名");

        string uid=Console.ReadLine().ToLower();//再将uid与系统中的数据进行比较;

    2:移除首尾指定字符

        方法原型

            string <strName>.Trim();//移除首尾的空格

            string<strName>.TrimStart();//移除开头的空格

            string<strName>.TrimEnd();//移除结尾的空格;

        如果要指定移除的内容,可添加一个char数组作为参数

            string <strnName>.Trim(char[] ch);

        例如:

            string str="abfcefcbcfa";

            //将首尾的abc全部去掉

            str=str.Trim('a','b','c');

            ///Trim里面的顺序没有任何关系,输出的结果是;str="fcefcbcf";

            ///在这里,Trim工作的时候,会先查询字符串的前面的字符有没有abc,一旦没有,就开始从字符串的后面开始检测,中间的不做考虑;

    3:字符串的比较方法

        1:Compare()方法:

            int res=string.Compare(string str1,string str2);

            按照字典排序比较

            当str1>str2时,返回1

            当str1=str2时,返回0

            当str1<str2时,返回-1

        2:Equals()方法

            bool <strName>.Equals(string str);

            比较如果相等就返回true,否则返回false

    4:字符串的合并与分割

        合并Join方法

            将数组str中的内容拼接成一个字符串,并在对应数组的每两项间添加分隔符;

            例如:

                string[] strs = { "没戏","卡卡","郑大世","凹凸曼"};

                string str = string.Join("|",strs);

                Console.WriteLine(str);

        分割split方法

            将字符串数组中的字符分割,分割后得到的内容放到一个数组中

            例如:

                //分析下面这句话,提取这句话的单词

                string str="Hello,How are you?";

                string[] words=str.Split(' ',','',''?');

                注:返回数组中可以有空字符串项,如果要去掉这些字符串项,可以使用例如这样的:

                string str="Hello,How are you?";

                string[] words=str.Split(new char [] {' ',',','?'},StringSplitOptions.RemoveEmptyEntries);

    5:字符串的查找

        Contains方法

            例如:Console.WriteLine("随便输入一串字母");

            string str =Console.ReadLine();

            if (str.Contains("abc"))

            {

                Console.WriteLine("字符串{0}中包含{1}",str,"abc");

            }

            else

            {

                Console.WriteLine("字符串{0}中不包含{1}",str,"abc");

            }

        IndexOf()方法//返回的是查找的字符的位置;

            string str =@"lh341621@163.com";

            ///用户名和域名

            int num =str.IndexOf('@');

            //int num1=str.LastIndexOf('@');这行代码是从后面忘前面查找;

            string user=str.Substring(0,num);

            string field=str.Substring(num+1);

            ///Substring(开始的位置[,截取字符串长度])

            ///当有两个参数的时候,从编号开始截取,截取长度为指定长度

            ///如果字符串长度不及截取长度,就会报错

            ///当使用第一个参数的时候,那么会从指定的位置开始,截取后面所有的内容;

            string user=str.Substring (3);

            

            例2:

                //            0123456789

                string str="ab@cd@ef@g";

                int num1=str.IndexOf('@',0);

                int num2=str.IndexOf('@',3);

                int num3=str.IndexOf('@',6);

                ///IndexOf使用就是从字符串左边开始找到由参数规定的字符,找到一个就返回一其位置

                

    6:字符串的插入,移除和替换

        插入:

            string str="Folunt_Jion";

            string inser="我是一个插入进来的字符串";

            str=str.Insert(1,inser);

            //则得到的新字符串是str="F我是一个插入进来的字符串olunt_Jion"

    7:判断结束或开始

        判断字符<strName>串是否以某字符开始或结束

            bool <strName>.StartsWith(string str);

            bool<strName>.EndsWith(string str);

    8:string.Format();使用的方法就是把参数里面的组合拼接起来

        例如:Console.WriteLine("{0}{1}{2}",1,2,3);///得出的结果就是:123;是对参数里面的拼接

        string str=string.Format("{0}{1}{2}","字符串","拼接","123");//其实CW就是调用这个方法;

        

            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C# 字符串