String:
表示形式:string s="sdasf" ; s.Length s[0] s="http://"+s 字符串自创建出来就不可改变,在堆中添加新的一块内存指向栈中的原先s地址
Compare To() 相等为0,当前字符顺序靠前时返回-1;靠后是返回1;
Replace() 用一个字符换取另一个字符,用一组字符串换取另一组字符串
Split() 再出现给定字符的地方,把成字符串拆分成一个字符串数组
SubString() 在字符串中得到给定位置的子字符串
ToLower() 把字符串转换成小写形式
ToUpper() 把字符串转换成大写形式
Trim() 删除首位的空白
IndexOf() 取得字符串第一次出现某个给定字符串或字符的位置
StringBuilder: using System.Text
StringBuilder sb=new string Builder("www.baidu.com"); StringBuilder sb=new StringBuilder(20);
StringBuilder sb=new StringBuilder("www.baidu.com",100);
我们需要对一个字符串进行频繁的删除添加操作的时候,使用StringBuilder的效率高
sb.Append(""); 在字符串后面添加字符
StringBuilder是在堆中一块内存中修改,不创建新的内存
sb.Insert(0,"http://") 再给定位置后面添加字符串
sb.Remove() 删除
sb.Replace() 代替
sb.ToString() 变成string不可变字符
正则表达式:
位置字符: ^开头 $结尾
using System.Text.RegularExpressions
string res=Regex.Replace(s,"^","开始") 搜索字符串,符合正则表达式的情况,然后把所有字符的位置,替换成后面的字符串 (定位开头元字符)
string res=Regex.Replace(s,"$","结束") (定位结束元字符)
基本语法字符:
检验输入的是否全是数字:
string pattern=@"^\d*$" 正则表达式(^表示开头是数字,*表示有0个或多个数字,$表示结尾是数字)
bool isMatch=Regex.IsMatch(s,pattern);判断s是否符合正则表达式
反义字符:
string str="I am Cat";
string pattert=@"[^ahou]" 它代表一个字符,除了ahou之外的任一字符(正则表达式)
string s=Regex.Replace(str,pattert,"*") 把str字符串中所有符合正则表达式的都替换成*
重复描述字符:
string pattern=@"^\d{5,12}$"; (正则表达式) 表示从开头到结尾符合5-12个数字的条件
bool isMatch=Regex.IsMatch("164565",pattern);
择一匹配:
string pattern=@"\d|[a-z]"; 选择出数字或是字母的字符
string str="adsdsa123 56 ***^%$#厚大司考";
MatchCollection col=Regex.Matches(s,pattern);
foreach(Match match in col)
{
Console.WriteLine(match.ToString()); 调用tostring方法,会输出match所匹配到的字符串
}
string pattern=@"[;]|[,]|[.]" 可以分割字符串
string[] strArray=Regex.Split(s,pattern);