1.常用的字符串处理方法
【1】查找某个字符在字符串中的位置
string.IndexOf(char value):从左往右找
string.LastIndexOf(char value):从右往左找
string email = "1175707786@qq.com";
int index = email.IndexOf('.');
if (index > 0)
{
Console.WriteLine("合法!");
Console.WriteLine($"下标为:{index}"); //从左往右找:0 1 2 3 4...13
}
else
{
Console.WriteLine("不合法!");
}
Console.ReadLine();
string email2 = "1175707785@qq.com.cn";
int index2 = email2.LastIndexOf('.');
Console.WriteLine($"下标为:{index2}");//从右往左找:用于文件后缀名
【2】string.SubString(int startIndex,int length):从字符串中截取子字符串
string fileName = "aaa.bb.txt";
string newFileName = fileName.Substring(4);//从第4个开始,后面的都被截取出来
Console.WriteLine(newFileName);
Console.ReadLine();
【3】string.ToLower():将字符串转换成小写形式
string name1 = "mary";
string pass1 = "123456";
Console.Write("请输入账号:");
string name2 = Console.ReadLine();
Console.Write("请输入密码:");
string pass2 = Console.ReadLine();
if (name1==name2.ToLower() && pass1==pass2)
{
Console.WriteLine("登陆成功!");
}
else
{
Console.WriteLine("登陆失败!");
}
【4】string.Equals(string):比较两个字符串的值是否相等
//==判断地址 Equals判断值
name1.Equals(name2.ToLower())
【5】string.Split(params char[] separator):基于数组的字符将字符串分割成子字符串
string str = "aaa,bbb,ccc,dddd";
string[] strs = str.Split(',');
for (int i = 0; i < strs.Length; i++)
{
Console.WriteLine(strs[i]);
}
Console.ReadLine();
【6】Join(string separator,params string[] value):连接字符串,串联字符串数组的所有字符,在每个元素之间使用指定的修饰符
string newStr = string.Join("$", strs);
Console.WriteLine(newStr);
【7】string.Length():计算字符串的长度
Console.WriteLine(str.Length);
【8】Trim():去掉字符串两边所有的空格
name1.Equals(name2.ToLower().Trim())
【9】string.Format():格式化字符串
string name1 = "张三";
string name2 = "李四";
//方法一:
string str1 = $"{name1},{name2}";
Console.WriteLine(str1);
//方法二:
Console.WriteLine("{0},{1}",name1,name2);
//方法三:
string str2 = string.Format("{0},{1}", name1, name2);
Console.WriteLine(str2);
Console.ReadLine();
string yi = "一";
string er = "二";
string san = "三";
string words = string.Format("独{0}无{1},举{0}反{2},垂涎{2}尺,略知{0}{1}", yi, er, san);
Console.WriteLine(words);
Console.ReadLine();
【注】
字符 | 说明 | 实例 | 输出结果 |
C | 货币格式 | String.Format("{0:C3}",2000) | ¥2,000,000 |
D | 十进制格式 | String.Format("{0:D3}",2000) | 2000 |
F | 小数点后的位数固定 | String.Format("{0:F3}",2000) | 2000,000 |
N | 用逗号隔开的数字 | String.Format("{0:N}",250000) | 250,000.00 |
P | 百分比计数法 | String.Format("{0:P3}",0.29768) | 29.768 |
X | 十六进制格式 | String.Format("{0:X000}",12) | C |
string str1 = string.Format("{0,-18:C3}", 2000);
string str2 = string.Format("{0,18:C3}", 2000);
Console.WriteLine(str1);
Console.WriteLine(str2);