目录
相关阅读:
String 类 (System) | Microsoft Learn
一、转义字符和@的用法
1.常规用法
我们现在有一行字,但是我对它的格式之类的有要求
例:天无绝人之路,条条道路通罗马。
我想打成:
天无绝人之路,
条条道路通罗马。
换行前,写法是:
string s = "天无绝人之路,条条道路通罗马";
如果希望换行,写法是:
string s = "天无绝人之路,\n条条道路通罗马";
因为计算机里默认的是,遇见\n就换行,所以它就会换行。
这些非常有用的转义字符有:
如果看不懂有个详细的链接:
什么是转义字符?转义字符有哪些?为什么使用转义字符?_程序猿!=程序员的博客-CSDN博客
2.@的第一个用法
但是,这样就会有个问题,如果你写个链接
string s = "D:\nice";
系统一看呦,这有个\n,咱们换行吧,那你收到的结局就是
D:
ice
那遇见这种情况,我们怎么办?那我需要告诉计算机,你后面这些字别瞎搞,你就正常给我当字符
你只需要前面加个@,计算机就能正常获取了,写法为:
string s =@"D:\nice";
3.@的第二个用法
还是这个例子
例:天无绝人之路,条条道路通罗马。
我想打成:
天无绝人之路,
条条道路通罗马。
我还有一个换行写法:
string s = "天无绝人之路,"
+"条条道路通罗马";
但是,这样好麻烦,不停的打双引号还有加号,很烦
所以我们要告诉计算机,后面这些,我换行你就自己给我换,别瞎搞
你就可以写成:
string s = @"天无绝人之路,
条条道路通罗马";
4.@的第三个用法
大家都知道,我们不能把关键字做名字
int int =5;
int string =6;
但是,我变态,我就要用!!!
那么你可以的!!
int @int = 5;
int @string = 6;
二、string和其他在一起吧
例:
int age = 6;
float higt = 156;
string s = "我今年" + age + "岁," + "身高" + higt + "cm";
但是,这样好麻烦,不停的打双引号还有加号,很烦
我们只需要在前面加个$,把int之类的用{}包起来。
int age = 6;
float higt = 156;
string s = $"我今年{age}岁,身高{higt}cm";
三、修改string
1 替换文本(Repelace)
string s = "apple";
s = s.Replace("a", "我的a");
//换完以后变成 我的apple
备注:这里只要符合要求的,都会被替换。
代码案例:
string s = "apple";
s = s.Replace("p", "我的p");
//换完以后变成 a我的p我的ple
2 去除空格
使用场景:
我们有时候需要去读取word或者txt,或者串口信息,经常在字符后面或者前面会有看不见的空格,当判断的时候会出现问题。
"apple"和"apple "是不一样的。
所以需要方法去去除空格。
2.1 去除字符前面的空格(TrimStart)
代码案例:
string s = " apple";
s = s.TrimStart();
2.2 去除字符后面的空格(TrimEnd)
代码案例:
string s = " apple";
s = s.TrimEnd();
2.3 前面后面的空格都去除(Trim)
代码案例:
string s = " apple ";
s = s.Trim();
2.4 (备注)所有空格都去掉(Repelace)
string s = " a p p l e ";
s = s.Replace(" ", "");
3 删除文本(Remove)
3.1 普通删除
例如,我们的文本还是apple,但是我想把ppl删了,然后我们就数一下,删除第1个字符(从0开始数的),往后删3个字符。
string s = "apple";
s = s.Remove(1, 3);
3.2 删除后续所有
例如,我们的文本还是apple,我只想要第0个字符“a”,后面都不要了。
string s = "apple";
s = s.Remove(0);
4 查找文本(Contains)
看string里是否含有某一段文字,如果我想知道apple里面是否有ple。
string s = "apple";
bool isHas = s.Contains("ple");
//如果有,会返回true,没有会显示false