第一次写CSDN博客,激动*n哦,记录自己的学习历程,把学习的东西给分类就会感觉很舒服,也方便记忆。
每次写东西的时候就会有仪式感,这是一个开始,给自己默默鼓励,一定会继续坚持下去的哦。
字符串函数:
一、基本字符串操作函数
1.Replace(替换字符):
string st = "abcdef";
string newstring = st.Replace("abc", "xyz");
Console.WriteLine(newstring); //即:xyzdef
2.Remove(删除字符):
①string st = "abcdef";
string newstring = st.Remove(4); //index到最后
Console.WriteLine(newstring); //即:abcd
②string st = "abcdef";
string newstring = st.Remove(4,1); //index,length
Console.WriteLine(newstring); //即:abcdf
3.Substring(字符串提取):
①string st = "abcdef";
string newstring = st.Substring(2); //index到最后
Console.WriteLine(newstring); //即:cdef
②string st = "abcdef";
string newstring = st.Substring(2,2); //index,length
Console.WriteLine(newstring); //即:cd
4.Split(拆分):
①String.Split(Char[])
string str = "aaatbbscctdd";
string []strArray = str.Split(new char[]{'t'}); 或string []strArray = str.Split('t'); //单字符切割(result : "aaa" "bbscc" "dd")
string []strArray = str.Split(new char[]{'t','s'}); //多字节切割(result : "aaa" "bb" "cc" "dd")
②String.Split(Char[],Int32)
string str = "aaatbbscctdd";
string []strArray = str.Split(new char[]{'t',2});//只切割成2份(result :"aaa" "bbscctdd")
③String.Split(Char[],StringSplitOptions)
string str = "aaatbbscctddt";
string []strArray = str.Split(new char[]{'t',StringSplitOptions.RemoveEmptyEntries});//去除空元素(result :"aaa" "bbscc" "dd")
string []strArray = str.Split(new char[]{'t',StringSplitOptions.None});//保留空元素(result :"aaa" "bbscc" "dd" “”)
④String.Split(String[],StringSplitOptions)
string str = "aaatbbscctddt";
string []strArray = str.Split(new String[]{"t",StringSplitOptions.RemoveEmptyEntries});//去除空元素(result :"aaa" "bbscc" "dd")
string []strArray = str.Split(new String[]{"t",StringSplitOptions.None});//保留空元素(result :"aaa" "bbscc" "dd" “”)
⑤String.Split(Char[],Int32,StringSplitOptions)
string str = "aaatbbscctddt";
string []strArray = str.Split(new char[]{'t',2,StringSplitOptions.RemoveEmptyEntries});//切割成2份且去除空元素(result :"aaa" "bbscctddt")
string []strArray = str.Split(new char[]{'t',2,StringSplitOptions.None});//切割成2份且保留空元素(result :"aaa" "bbscctddt" “”)
⑥String.Split(String[],Int32,StringSplitOptions)
string str = "aaatbbscctddt";
string []strArray = str.Split(new String[]{"t",2,StringSplitOptions.RemoveEmptyEntries});//切割成2份且去除空元素(result :"aaa" "bbscctddt")
string []strArray = str.Split(new String[]{"t",2,StringSplitOptions.None});//切割成2份且保留空元素(result :"aaa" "bbscctddt" “”)
5.Trim(清空空格):
string st ="abcdef";
string newstring = st.Trim(new char[] {'a'});//寻找st字符串中开始与末尾是否有与'a'匹配,如有,将其移除。
Console.WriteLine(newstring); //即:bcdef
6.ToLower/ToUpper(转换大小写):
7.IndexOf(获取指定的字符串的开始索引):
string st = "abcdef";
int num=st.IndexOf("bcd");
Console.WriteLine(num); //即:1
如果没有找到则返回-1
8.Equals(是否相等)
①string a = "abcdef";
bool b = a.Equals("bcdef");
Console.WriteLine(b);//即:false
②string a = "ABCDEF";
bool b = a.Equals("abcdef",StringComparison.CurrentCultureIgnoreCase);
Console.WriteLine(b);//即:true
注:第二个参数指定区域性、大小写以及比较新的排序规则
9.Contains(判断是否存在):
string st="语文数学英语";
bool b=st.Contains("语文");
Console.WriteLine(b);//true
10.EndsWith,StartsWith(判断字符串的开始或结束):
string st="语文数学英语abc";
bool b=st.EndsWith("英语ABC",StringComparison.CurrentCultureIgnoreCase);//第二个参数忽略大小比较。
Console.WriteLine(b);//true
11.Insert(字符串插入)
string st="语文数学英语abc";
string newst=st.Insert(6,"物理");//注:在指定索引“前”插入。
Console.WriteLine(newst);//即:语文数学英语物理abc
12.Join(字符串插入):
①String.Join 方法 (A (String), B (String[]));
在指定 String 数组B的每个元素之间串联指定的分隔符 A,从而产生单个串联的字符串 。
string [] tmpStr={abc,def,ghi};
string jn = string.Join(“-“, tmpStr);
此时jn=”abc-def-ghi”;
②List<string> datamodelfieldIdList = new List<string>(datamodelfieldidlist.Split(','));//数据模型字段id集合
string datamodelfieldIdListStr = string.Join("','", datamodelfieldIdList);
二、日期格式转换
获取上周时间:
nowDate = nowDate.AddDays(-7);
starttime = Assistant.GetWeekFirstDayMon(nowDate).ToString("yyyy-MM-dd HH:mm:ss");
endtime = Assistant.GetWeekLastDaySun(nowDate).AddDays(1).AddSeconds(-1).ToString("yyyy-MM-dd HH:mm:ss");
还有其他一些日期函数,都是对时间日期的处理,按照自己的需求处理即可。
关于字符串格式化函数 ToString()和string.format()
一、ToString()方法
(1)、日期格式的转换
//2007年4月24日
System.DateTime.Now.ToString("D");
//2007-4-24
System.DateTime.Now.ToString("d");
//2007年4月24日 16:30:15
System.DateTime.Now.ToString("F");
//2007年4月24日 16:30
System.DateTime.Now.ToString("f");
//2007-4-24 16:30:15
System.DateTime.Now.ToString("G");
//2007-4-24 16:30
System.DateTime.Now.ToString("g");
//16:30:15
System.DateTime.Now.ToString("T");
//16:30
System.DateTime.Now.ToString("t");
//2007年4月24日 8:30:15
System.DateTime.Now.ToString("U");
//2007-04-24 16:30:15Z
System.DateTime.Now.ToString("u");
//2007-04-24 15:52:19
System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff");
//2007年04月24 15时56分48秒
System.DateTime.Now.ToString("yyyy年MM月dd HH时mm分ss秒");
//星期二, 四月 24 2007
System.DateTime.Now.ToString("dddd, MMMM dd yyyy");
//二, 四月 24 '07
this.TextBox2.Text = System.DateTime.Now.ToString("ddd, MMM d \\'yy");
//星期二, 四月 24
System.DateTime.Now.ToString("dddd, MMMM dd");
//4-07
System.DateTime.Now.ToString("M/yy");
//24-04-07
System.DateTime.Now.ToString("dd-MM-yy");
(2)、使用其它函数对日期进行转换
string str = "";
str += "ToShortDateString:" + DateTime.Now.ToShortDateString() + "<br>";
str += "ToShortTimeString:" + DateTime.Now.ToShortTimeString() + "<br>";
str += "ToLongDateString" + DateTime.Now.ToLongDateString() + "<br>";
str += "ToLongTimeString" + DateTime.Now.ToLongTimeString() + "<br>";
str += "ToString:" + DateTime.Now.ToString() + "<br>";
Response.Write( str );
输出结果:
ToShortDateString : 2006-2-13
ToShortTimeString : 12:51
ToLongDateString : 2006年2月13日
ToLongTimeString : 12:51:17
ToString : 2006-2-13 12:51:17
(3)、将数值类型转换为字符串
1.货币:2.5.ToString("C") ¥2.50
2.十进制数: 25.ToString("D5") 00025
25.ToString("D3") 025
3.科学型: 25000.ToString("E") 2.500000E+005
4.固定点: 25.ToString("F2") 25.00
25.ToString("F1") 25.0
5.常规: 2.5.ToString("G") 2.5
6.数字: 2500000.ToString("N") 2,500,000.00
2500000.ToString("N0") 2,500,000
7.十六进制 255.ToString("X") FF
二、Format()方法:
string numstr = string.Format("{0:X8}", num).ToUpper();
string record=string.Format("姓名:{0}\n出生年月:{1}\n身高:{2}\n血型:{3}\n星座:{4}\n最喜欢的食物:{5}",name,birthday,hight,bType,stars,favFood);
不规定格式的时候是个占位符,:+格式的时候限制了位数和格式