C#对字符串的操作

1、如何分隔字符串到数组中
    string total="aaa,bbb,ccc,dddd";
    string[]strArray;
                                char[]charArray=new char[]{','};
                                strArray=total.Split(charArray);

2、字符串下标调用控件
    //
    private void button1_Click(object sender, System.EventArgs e)
                {
                        for(int i=1;i<11;i++)
                                this.MyCheck("checkBox"+i.ToString());
                }
    //
                private void MyCheck(string whichone)
                {
                        foreach(Control control in this.Controls)
                        {
                                CheckBox mycheckbox = (control as CheckBox);
                                if (mycheckbox != null)
                                {
                                        string myName = mycheckbox.Name.ToString();
                                        if(myName == whichone)
                                        {
                                                mycheckbox.Checked = true;
                                        }
                                }
                        }
                }

3、字符串处理
    string fox;
    fox.ToLower()转化成小写字母
    fox.ToUpper()转化成大写字母
    fox.Trim()删除前后空格
    fox.Trim(trimChars)删除其它字符
    fox.TrimStart()删除前空格
    fox.TrimEnd()删除后空格
    fox.PadLeft(10)增加左边空格,使字串达到某长度。
    fox.PadRight(10)增加右边空格,使字串达到某长度。
    fox.PadX(10,'-')增加其它字符,使字串达到某长度。X指:Left/Right
    fox.Split(' ')将字串分解成数组

4、字符串常用方法
    //获得汉字的区位码
    byte[] array = new byte[2];
    array = System.Text.Encoding.Default.GetBytes("");

    int i1 = (short)(array[0] - '\0');
    int i2 = (short)(array[1] - '\0');

    //unicode解码方式下的汉字码
    array = System.Text.Encoding.Unicode.GetBytes("");
    i1 = (short)(array[0] - '\0');
    i2 = (short)(array[1] - '\0');

    //unicode反解码为汉字
    string str = "4a55";
    string s1 = str.Substring(0,2);
    string s2 = str.Substring(2,2);

    int t1 = Convert.ToInt32(s1,16);
    int t2 = Convert.ToInt32(s2,16);

    array[0] = (byte)t1;
    array[1] = (byte)t2;

    string s = System.Text.Encoding.Unicode.GetString(array);

    //default方式反解码为汉字
    array[0] = (byte)196;
    array[1] = (byte)207;
    s = System.Text.Encoding.Default.GetString(array);

    //取字符串长度
    s = "iam方枪枪";
    int len = s.Length;//will output as 6
    byte[] sarr = System.Text.Encoding.Default.GetBytes(s);
    len = sarr.Length;//will output as 3+3*2=9

    //取字符串长度
    System.Text.StringBuilder sb = new System.Text.StringBuilder("");
    sb.Append("i ");
    sb.Append("am ");
    sb.Append("方枪枪");


5、定自已的格式化类
    public class Vector:IFormattable
        {
                public double x,y,z;
                public Vector(double dx,double dy,double dz)
                {
                        x=dx;
                        y=dy;
                        z=dz;
                }
                public string ToString(string format,IFormatProvider formatProvider)
                {
                        if(format==null)
                                return ToString();
                        string formatUpper=format.ToUpper();
                        switch(formatUpper)
                        {
                                case "N":
                                        return "||"+Norm().ToString()+"||";
                                case "VE":
                                        return String.Format("({0:E},{1:E},{2:E})",x,y,z);
                                case "IJK":
                                        StringBuilder sb=new StringBuilder(x.ToString(),30);
                                        sb.Append("i+");
                                        sb.Append(y.ToString());
                                        sb.Append("j+");
                                        sb.Append(z.ToString());
                                        sb.Append("k");
                                        return sb.ToString();
                                default:
                                        return ToString();
                        }

                }
                public override string ToString()
                {
                        return "("+x+","+y+","+z+")";
                }
                public double Norm()
                {
                        return x*x+y*y+z*z;
                }
        }

6、查找
    //                  string str1="Gelifeng";
    //
    //                  string str2="feng";
    //                  int result=str1.IndexOf(str2,0);
    //                  if(result>0)
    //                          MessageBox.Show("Found");
    //                  else
    //                          MessageBox.Show("Not Found");

7、正则表达式
    Internet地址表达式
    http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
    Email地址表达式
    \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
    邮编
    \d{6}
    电话号码
    (\(\d{3}\)|\d{3}-)?\d{8}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值