上一篇:
C#,入门教程(12)——数组及数组使用的基础知识https://blog.csdn.net/beijinghorn/article/details/123918227
字符串的使用与操作是必需掌握得滚瓜烂熟的编程技能之一!!!!!
C#语言实现预定义了多种基础的数据类型。
字符 Char、字符串String 与 数学Math 是 C# 系统级别的、预定义的数据类型。
其中 String 专门用于字符串的存储与处理,一般写作 string 。
本文介绍 string 的常用使用方法。
一、字符串的定义 string
与其他数据类型没有太大的差别。
// 字符串以一对双引号开始与结束
string a = "hello";
// 如果字符串内有双引号
string b = "hello\"";
// 或者
string c = @"hello""";
// 字符创数组
string[] WeekDaysChinese = new string[7] {
"周一", "周二", "周三", "周四", "周五", "周六", "周日",
};
二、字符串的定位、遍历 Length IndexOf
1、字符串长度 Length 与 截取字串 Substring
字符串的长度就是字符(英文、数字与汉字都算一个)个数。
// 字符串的遍历
string helloString = "hello!你好!";
string htmlString = "";
for(int i=0; i<helloString.Length; i++)
{
// 截取 i 开始的一个字(母)
htmlString += "Char(" + i + "):" + helloString.Substring(i,1) + "<br>";
}
WebBrowser1.DocumentText = htmlString;
2、正向定位与反向定位 IndexOf LastIndexOf
获取某个字或字串的位置(都从头算起,0起步)。
string helloString = "Worldlrow!";
// 返回 2
int posFirst = helloString.Indexof("r");
// 返回 6
int posSecond = helloString.LastIndexof("r");
三、子串 StartsWith Contains EndsWith
string[] nameString = new string[] {
/* 为保护隐私,此处省略很多双括号括起来的名字,请自行补上。 */
};
// 遍历每一个名字
// 找出隔壁老王;
// 含有 八 字的家伙;
// 名字以 蛋 结尾的活计;
foreach(string name in nameString)
{
if(name.StartsWith("王"))
{
;
}
if(name.Contains("八"))
{
;
}
if(name.EndsWith("蛋"))
{
;
}
}
四、字符串的整理与截取 Trim
字符串经常前后会留下空格、换行符、制表符等等,干扰计算。
字符串处理之前,经常做的就是清理前后的空格及一些特殊符号。
// 含有多余字符的字符串
string longString = " hello world ";
// 干净的字符串 hello world
string clearString = longString.Trim();
// Trim 也支持删除前后特定的字或字母
string banner = "*** Much Ado About Nothing ***";
string resultNoStar = banner.Trim('*');
// 或一些特定字或字母
char[] charsToTrim = { '*', ' ', '\''};
string result = banner.Trim(charsToTrim);
五、字符串的大小写转换 ToUpper ToLower
string sourceString = "abshah1232-1kDDsda";
string lowerString = sourceString.ToLower();
string upperString = sourceString.ToUpper();
六、字符串的分解与合并 Split Join
先看一个去掉多余空格的实例:
string sourceString = " hello world is my first app. ";
string reault = String.Join(" ", sourceString.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries));
一句话就去掉了多余的空格!
分解开来的代码是:
string sourceString = " hello world is my first app. ";
// 用 split 将字符串以 空格为分割字母 分割成 字符串数组
string[] arrayString = sourceString.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
// 用空格将字符串数组连接成字符串
string result = String.Join(" ", arrayString);
建议用后面的一个写法。
Split 是很常用的技能,对于编程者而言如同学生的计算器,必须熟练掌握!!!!
// 读取文件的全部内容
string bufFile = File.ReadAllText(filename);
// 将文件的内容分解成行
string[] bufLines = buf.Split(new char[] { '\n' } , StringSplitOptions.RemoveEmptyEntries);
// 依次处理各行
for(int i=0; i<bufLines.Length; i++)
{
if(bufLines[i].Trim().Length < 1) continue;
;
}
七、字符串替换 Replace
Replace 其实是很复杂的函数。
咱们先了解其常用的简单的用法。
string worldString = "hello world";
string chinaString = worldString.Replace("World","China");
更复杂的字符串与其他数据类型的转换后面再讲。
下一篇:
C#,入门教程(14)——字符串与其他数据类型的转换https://blog.csdn.net/beijinghorn/article/details/124004562