• 字符和字符串


    字符类

    Char在C#中表示一个Unicode字符,正是这些Unicode字符构成了字符串。Unicode字符是目前计算机中通用的字符编码,它为针对不同语言中的每个字符设定了统一的进制编码,用于满足跨语言、跨平台的文本转换、处理的要求。

    char ch1 = ‘L’;

    1.Char类的常用方法及说明:

    IsControl:是否属于控制字符类别。

    IsDigit:是否属于十进制数字类别。

    IsHighSurrogate:是否为高代理项。

    IsLetter:是否属于字母类别。

    IsLetterOrDigit:是否属于字母或者十进制数字类别。

    IsLower:是否属于小写字母类别。

    IsLowSurrogate:是否为低代理项。

    IsNumber:是否属于数字类别。

    IsPunctuation:是否属于标点符号类别。

    IsSeparator:是否属于分隔符类别。

    IsSurrogatePair:是否形成代理项对。

    IsSymbol:是否属于符号字符类别。

    IsUpper:是否属于大写字母类别。

    IsWhiteSpace:是否属于空白类被。

    Parse:将指定字符串的值转换为它的等效Unicode字符。

    ToLower:转换成小写。

    ToLowerInvariant:使用固定区域性的大小写规则,将Unicode字符的值转换为其小写等效项。

    ToString:转换成字符串。

    ToUpper:转换成大写。

    ToUpperInvariant:使用固定区域性的大小写规则,将Unicode字符的值转换为其大写等效项。

    TryParse:将指定字符串的值转换为它的等效Unicode字符。

    2.转义字符

    转义字符(单个反斜杠)只针对后面紧跟着的单个字符进行操作。

    :回车换行

    :横向跳到下一制表位置

    v:竖向跳格

    :退格

    :回车

    f:换页

    \:反斜线符

    ’ :单引号符

    ddd:1-3位八进制数所代表的字符

    xhh:1-2位十六进制所代表的字符

     

    String类

    1.比较字符串

    1).Compare方法

    比较两个字符串是否相等:

    Int Compare(string strA, string strB);

    Int Compare(string strA, string strB ,bool ignorCase);

    注:比较字符串在英文字典中的位置。

    2).CompareTo方法

    以实例对象本身与指定的字符串作比较是否相同。

    strA.CompareTo(strB);

    3).Equals方法

    Equals方法执行顺序(区分大小写和区域性)比较。

    strA.Equals(strB);

    String.Equals(strA, strB);

    2.格式化字符串

    Public static string Fromat(string format, object obj);

    format:用来指定字符串所要格式化的形式。

    obj:要被格式化的对象。

    例如:

    String.Format(“{0},{1}!!!”, strA, strB);

    String.Format(“{0:D}”, dt);

    格式规范         说明

    d                          简短日期格式(YYYY-MM-dd)

    D                         完整日期格式(YYYY年MM月dd日)

    t                          简短时间格式(hh:mm)

    T                          完整时间格式(hh:mm:ss)

    f                           简短的日期/时间格式(YYYY年MM月dd日 hh:mm)

    F                          完整的日期/时间格式(YYYY年MM月dd日 hh:mm:ss)

    g                          简短的可排序的日期/时间格式(YYYY-MM-dd hh:mm)

    G                         完整的可排序的日期/时间格式(YYYY-MM-dd hh:mm:ss)

    M/m                   月/日格式(MM月dd日)

    Y/y                      年/月格式(YYYY年MM月)

    3.截取字符串

      strA.Substring(1, 4);

    4.分割字符串

      public string[] Split(params char[] separator);

    5.插入和填充字符串

    public string Insert(int startIndex, string value)

    public sting PadLeft(int totalWidth, char paddingChar)

    totalWidth:指定填充后的字符长度

    paddingChar:指定所要填充的字符,如果省略,则填充空格符号

    6.删除字符串

    Public string Remove(int startIndex);

    Public string Remove(int startIndex, int count);

    7.复制字符串

    Public static string Copy(string str);

    Public void CopyTo(int sourceIndex, char[] destination, int destinationIdex, int count);

    strA.CopyTo(1, str, 0, 4);

    8.替换字符串

    Public string Replace(char oChar, char nChar);

    Public string Replace(string oValue, string nValue);

    Sting strA = strB.Replace(“代替换的”, “替换后新的”)

    StringBuilder类

    类表示值为可变字符序列的类似字符串的对象。之所以说值是可变,是因为在通过追加、移除、替换和插入字符而创建它可以对它进行修改。

    1.StringBuilder类中的常用方法及说明:

    Append:将文本或字符串追加到指定对象的末尾。

    stringBuilder.Append(“aaaa”);

    AppendFormat:自定义变量的格式并将这些值追加到StringBuilder对象末尾。

    stringBuilder. AppendFormat(“{0:C}”, Num);

    Insert:将字符串或对象添加到当前StringBuilder对象中的指定位置。

    stringBuilder. Insert(0, “名称:”);

    Remove:从当前StringBuilder对象中移除指定数量的字符。

    stringBuilder. Remove(15, stringBuilder.Length-15);

    Replace:用另一个指定的字符来替换StringBuilder对象内的字符。

    stringBuilder. Replace(““代替换的””, “替换后新的”);

    2.StringBuilder类与String类的区别

    如果要操作一个不断增长的字符串,尽量不用String类,改用StringBuilder类。

    两个类的工作原理不同:String类是一种传统的修改字 符串的方式,它确实可以完成把一个字符串添加到另一个字符串上的工作没错,但是在.NET框架下,这个操作实在是划不来。因为系统先是把两个字符串写入内 存,接着删除原来的String对象,然后创建一个String对象,并读取内存中的数据赋给该对象。这一来二去的,耗了不少时间。而使用 System.Text命名空间下面的StringBuilder类就不是这样了,它提供的Append方法,能够在已有对象的原地进行字符串的修改,简 单而且直接。当然,一般情况下觉察不到这二者效率的差异,但如果你要对某个字符串进行大量的添加操作,那么StringBuilder类所耗费的时间和 String类简直不是一个数量级的。

    《C#从入门到精通》读后总结

  • 相关阅读:
    16.普通用户、网格长、网格员,操作数据(3)newapp/components/putong.vue
    15.普通用户、网格长、网格员,操作数据(2)newapp/pages/center/center.vue
    14.普通用户、网格长、网格员,操作数据(1)后端部分
    13.需求:在后台可以控制网格长和网格员在小程序端对数据的编辑权限
    Asp.Net Core与携程阿波罗(Apollo)的第一次亲密接触
    Asp.Net Core 3.1 获取不到Post、Put请求的内容 System.NotSupportedException Specified method is not supported
    [Hei.Captcha] Asp.Net Core 跨平台图形验证码实现
    基于IdentityServer4的OIDC实现单点登录(SSO)原理简析
    ASP.NET Core Swagger接入使用IdentityServer4 的 WebApi
    ASP.NET Core 使用 Google 验证码(reCAPTCHA v3)代替传统验证码
  • 原文地址:https://www.cnblogs.com/hmliang/p/5240430.html
Copyright © 2020-2023  润新知