C#的一些骚操作记录

1.C#中字符串前面加@的作用

在C#中,字符串前加@表示强制不转译。
如果你的字符串中有大量的\字符,而不是想用转义,那就写@来取消\转义字符。
还有就是字符串可以换行。

string a=@"abc
           def
           ghi";
2.C#中??的作用

如果此运算符的左操作数不为null,则此运算符将返回左操作数,否则返回右操作数。
例如:a??b??c a不为null时返回a本身,否则,b不为null时则返回b本身,否则返回c。

3.C#中字符串前面加$的作用

C# 6 引入了字符串前缀$

string str = “Jump”;
string res = $"{str}chen";

等同于使用Format方法:

string res = string.Format("{0}chen",str);

并且,我们还可以直接调用值的方法,比如:

string res = $"{str.ToLower()}chen"; //.ToLower()必须用在{}里面,否则,.ToLower()就被当作字符串处理

使用字符串前缀$,代码可读性要好一些,比如:

int a = 1;
int b = 2;
string c = $"{a} + {b} = {a + b}"; //使用$
string d = string.Format("{0} + {1} = {2}", a, b, a + b); //使用Format
4.String的实例函数Trim()移除字符串前后的空格
String str = " jump chen   ";
Console.WriteLine(str.Trim()); 
5.正则表达式Regex

需要using System.Text.RegularExpressions;

判断字符串是不是纯数字 举例:

// ^代表正则表达式开始,$代表正则表达式结束,+代表匹配1--无穷个,[0-9]匹配0-9范围内的任意字符,所以只能输入数字
Regex regex = new Regex("^[0-9]+$"); 
Regex regex2 = new Regex("^[0-9]*$"); // *代表匹配0--无穷个,所以可以不输入,输入也只能输入数字
Console.WriteLine(regex.IsMatch("4655465465")); // True
Console.WriteLine(regex2.IsMatch("4655465465")); // True
Console.WriteLine(regex.IsMatch("")); // Flase
Console.WriteLine(regex2.IsMatch("")); // True

更多正则表达式规则和用法请见:
https://zh.wikipedia.org/wiki/正则表达式
https://blog.csdn.net/paris_chenxin/article/details/52885720

未完待续

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值