Csharp进阶:字符串常用方法

来源:互联网 发布:天刀淘宝刷白发多少钱 编辑:程序博客网 时间:2024/06/08 07:46

字符串的不可变性:字符串是一个常量。

字符串拘留池机制:当一个字符串已经被创建,那么以后每次创建相同值的字符串时会直接引用它的地址值,无需为自己的值开辟新的内存空间。

字符串的静态方法

字符串比较:

Compare()方法用于比较两个字符串是否相等,该方法有两个string类型参数,用于接收进行对比的字符串。如果第一个字符串大于第二个字符串,则返回一个1;如果两个字符串相同,则返回0;若第一个字符串小于第二个字符串,则返回一个-1。。

Console.WriteLine(string.Compare("abcd","abc"));

上述语句返回1,因为前三个元素相等,第一个字符串长于第二个。

格式化字符串:

Format()方法

string str = string.Format("姓名:{0},年龄:{1}","小明", 10);

判断字符串是不是一个空字符串:

IsNullOrEmpty()方法

bool ret = string.IsNullOrEmpty("1");

字符串拼接

Join()方法的作用是使用指定的字符或字符串,将字符串数组中的元素连接起来。

string ret = string.Join("_", "王垚","亚东","志帆");

           Console.WriteLine(ret);

字符串的实例方法

Contains()方法用于判断一个字符串中是否包含指定字符串

Console.WriteLine("abcdefgh".Contains("def"));

EndsWith()方法的作用是判断当前字符串是否以指定字符串结尾

string str = "C#编程之道";

bool ret = str.EndsWith("之道");

StartsWith()方法的作用是判断当前字符串是否以指定字符串开头

bool ret = str.StartsWith("之道");

IndexOf()方法用于返回指定字符或字符串在字符串中的索引,在查找过程中,从字符串左边开始查找,如果找到第一个,便返回对应的索引且方法结束,否则返回-1

(1)找出第一个字所在的索引

index = str.IndexOf("编程");

(2)找出索引为2开始共两个元素,两个元素都存在则输出第一个字符的索引,否则-1;

index = str.IndexOf("编程",2,2);

LastIndexOf用来从尾部向首部找到所找元素的下标

int index = str1.LastIndexOf(".");

Split()方法专门用来分隔字符串。例如有一个字符串“I have a dream”,要想统计该字符串中单词的个数,可以使用 Split()方法将字符串以空格分隔成字符串数组。

  str ="I have     a dream";

string[] strArr = str.Split(newchar[] { ' '},StringSplitOptions.RemoveEmptyEntries);

StringSplitOptions 用来省略返回值中的空字符串

Substring()方法的作用是对字符串进行截取,例如要获取文件的后缀名,可以使用Substring()方法。

从索引5开始找到所有的元素

string num = "222023333";

string retStr = no.Substring(5);

从索引为0的位置开始截取5个长度的字符座位字符串返回

retStr = no.Substring(0,5);

ToCharArray()方法将一个字符数组转化成字符串

char[] chArr = str.ToCharArray();

string str1 = newstring(chArr);

ToUpper()方法的作用是将字符串中所有的英文字母都变成大写的

str = str.ToUpper();

ToLower()方法的作用是将字符串中所有的英文字母都变成小写的

str = str.ToLower();

Trim()方法的作用是去除字符串两端的空格,例如在检测用户输入信息时,如果用户不小心在结束的位置输入了一个空格,那么将无法获得准确数据。因此,需要使用 Trim()方法将字符串两端的空格去掉。

str = "               ";

剔除字符串前缀空格和后缀空格

           str = str.Trim();

剔除前缀空格

           str = str.TrimStart();

剔除后缀空格

           str = str.TrimEnd();

剔除其他符号

str = "******* ** *******";

           str = str.Trim('*');

Replace用来指定字符替换旧的字符

  str =str.Replace("TMD","**");

StringComparison用来指定某些区域、大小写或排序规则

StringComparison.OrdinalIgnoreCase使用序号排序规则并忽略字符串的大小写,对字符串进行比较

("c#",StringComparison.OrdinalIgnoreCase);

Encoding.ASCII.GetBytes(str);用来将字符串转化为ASCII

string retStr = Encoding.ASCII.GetString(byteArr);用来将ASCII码转化为字符串

原创粉丝点击