【C#】string使用汇总
一、排序
char[] tmp = str.ToArray();
Array.Sort(tmp); //按ASCII排序
二、字节数组转换为ASCII字符串
// 字节数组 byte[] ba = new byte[] { 119,104,97,116,50,49,46,99,111,109 }; // 转换为ASCII的字符 string s = Encoding.ASCII.GetString(ba);
//转换ASCII字符串转换为字节数组 byte[] ba = Encoding.UTF8.GetBytes(s)
三、string与char[]之间的转换
string ss = "abcdefg";
char[] cc = ss.ToCharArray();
string s = new string(cc);
四、byte[]与char[]之间的转换
byte[] bb;
char[] cc = Encoding.ASCII.GetChars(bb);
byte[] bb = Encoding.ASCII.GetBytes(cc);
五、提取字符串中的数字
str = System.Text.RegularExpressions.Regex.Replace(str, @"[^0-9]+", "")
str = Regex.Replace(str, @"[^\d.\d]", "")//带小数点
六、判断字符串数组中某字符是否存在
int exist = Array.IndexOf(tmpArray, str);
//tmpArray为字符串数组,str为判断依据
if(exist == -1) //该字符不存在
{
//代码
}
七、字符串去重
char[] chars = newstr.ToList<char>().Distinct().ToArray<char>();
八、字符串转置
string newstr = new string(str.ToArray().Reverse().ToArray());
九、double转string后,显示非数字
当除数和被除数都为0时,返回非数字。
十、去掉string[]中为空的值
tmpArr = tmpArr.Where(x => !string.IsNullOrEmpty(x)).ToArray();
十一、判断字符串只包含字母或数字
string strdata = "0sfadg"; //0或正整数:@"^[0-9]\d*$" if (System.Text.RegularExpressions.Regex.IsMatch(strdata, "^[0-9a-zA-Z]+$")) { }
十二、字符串转化为固定长度左对齐,右补空格
/// <summary> /// 字符串转化为固定长度左对齐,右补空格 /// </summary> /// <param name="strTemp">需要补齐的字符串</param> /// <param name="length">补齐后的长度</param> /// <returns></returns> public string AlignmentStr(string strTemp, int length) { byte[] byteStr = System.Text.Encoding.Default.GetBytes(strTemp.Trim()); int iLength = byteStr.Length; int iNeed = length - iLength; byte[] spaceLength = Encoding.Default.GetBytes(" ");//获取一个空格的长度 iNeed = iNeed / spaceLength.Length; string spacestring = SpaceFunc(iNeed); return strTemp + spacestring; }
十三、“$” 符号的作用以及用法
“$” 符号是C#6.0中新出现的一个特性,也即是字符串的拼接优化。
string str =string.Format("my name is {0},my age is {1}.", name, age);
可写成:
string str = $"my name is {name},my age is {age}.";
/*******相与枕藉乎舟中,不知东方之既白*******/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!