字符串处理
2006-01-07 20:24
120 查看
1.建立字符串:如果多次修改一个较长字符串,该字符串类就会变得效率低下。在这种情况下应使用别一个类System.Text.StringBuilder
2.格式化表达式:格式化表达式有两个有效的接口IformatProvider和Iformattbale来处理。在自己的类上执行这两个接口,就可以定义自己的格式化序列,这样,Console.WriteLine()和类似的类就可以以指定的方式显示类的值。
3.正则表达式:.NET还提供了一些非常复杂的类来处理需要识别字符串,或从长字符串中撮满足某些比较复杂的条件的子符串的情况。这里所说的复杂,是指需要确定字符串中重复出现某个字符或一组字符的情况,或者需要确定以s开关、且至少包含一个n的所有单词等的情况。虽然可以使用字符串类,编写方法来执行这类处理,但这类方法编写起来比较繁琐,而使用System.Text.RegularExpressions中的类就比较简单,System.Text.RegularExpressions专门用于执行这类处理。
System.String
为了解决在长字符串使用System.String的问题,Microsoft提供了System.Text.StringBuilder类。StringBuilder不像字符串功能那么强大,有那么多己所支持的方法。在StringBuilder上可以进行的处理仅限于替换和添加或删除字符串中的文本。但是,它的工作方式宾高效。
在构造一个字符串时,要给它分配足够的内存来保存字符串,但StringBuilder通常分配的内存会比需要的更多。可以选择电焊工指定要分配多少内存,但如果没有显示指定,内存空间量在默认的情况下就根据STringBuilder初始化时的字符串长度来确定。它有两个主要的属性,Length指定字符串的实际长度,Capacity是字符串占据内存空间的长度。对字符串的修改就在这个内存窨中进行,这就大大提高了添加子字符串和替换单个字符的效率。删除或子字符串仍然低下,因为这需要移动随后的字符串。只有执行扩展字符串容量的操作,才会给字符串分配需要的新内存,才可能移动包含的字符串。stringBuilder如果检测到容量超出,且该容量中没有显示设置新值,就会使自己的容量翻倍。
定义:
StringBuilder sb = new StringBuilder("Hello");
或者
StringBuilder sb = new StringBuilder(20);
只读属性MaxCapacity表示对给定的StringBuilder实例的限制,最多可以有多少容量。默认的情况下是由int.MaxValue给定(大约20亿)
2.格式化表达式:格式化表达式有两个有效的接口IformatProvider和Iformattbale来处理。在自己的类上执行这两个接口,就可以定义自己的格式化序列,这样,Console.WriteLine()和类似的类就可以以指定的方式显示类的值。
3.正则表达式:.NET还提供了一些非常复杂的类来处理需要识别字符串,或从长字符串中撮满足某些比较复杂的条件的子符串的情况。这里所说的复杂,是指需要确定字符串中重复出现某个字符或一组字符的情况,或者需要确定以s开关、且至少包含一个n的所有单词等的情况。虽然可以使用字符串类,编写方法来执行这类处理,但这类方法编写起来比较繁琐,而使用System.Text.RegularExpressions中的类就比较简单,System.Text.RegularExpressions专门用于执行这类处理。
System.String
为了解决在长字符串使用System.String的问题,Microsoft提供了System.Text.StringBuilder类。StringBuilder不像字符串功能那么强大,有那么多己所支持的方法。在StringBuilder上可以进行的处理仅限于替换和添加或删除字符串中的文本。但是,它的工作方式宾高效。
在构造一个字符串时,要给它分配足够的内存来保存字符串,但StringBuilder通常分配的内存会比需要的更多。可以选择电焊工指定要分配多少内存,但如果没有显示指定,内存空间量在默认的情况下就根据STringBuilder初始化时的字符串长度来确定。它有两个主要的属性,Length指定字符串的实际长度,Capacity是字符串占据内存空间的长度。对字符串的修改就在这个内存窨中进行,这就大大提高了添加子字符串和替换单个字符的效率。删除或子字符串仍然低下,因为这需要移动随后的字符串。只有执行扩展字符串容量的操作,才会给字符串分配需要的新内存,才可能移动包含的字符串。stringBuilder如果检测到容量超出,且该容量中没有显示设置新值,就会使自己的容量翻倍。
定义:
StringBuilder sb = new StringBuilder("Hello");
或者
StringBuilder sb = new StringBuilder(20);
只读属性MaxCapacity表示对给定的StringBuilder实例的限制,最多可以有多少容量。默认的情况下是由int.MaxValue给定(大约20亿)
相关文章推荐
- HDU 1020 Encoding (字符串处理)
- 关于sscanf()处理字符串的总结
- 字符串处理工具
- php字符串处理函数库
- C字符串处理函数
- 字符串处理函数源码
- 华为机试——字符串合并处理
- Boost学习系列5-字符串处理-(上)
- NBUT 1189 Join the Lyrics Player(字符串处理)
- HDU 4639 Hehe(字符串处理,斐波纳契数列,找规律)
- 【字符串处理】HDOJ-1020-Encoding
- 2013年4月1日星期一java字符串处理
- ios开发处理服务器返回的时间字符串
- ruby当中的字符串处理%Q, %q, %W, %w, %x, %r, %s 的用法
- sturts2 标签关于字符串处理
- (字符串的处理4.7.22)POJ 3337 Expression Evaluator(解析C风格的字符串)
- Android的简单应用(四)——字符串处理
- php字符串处理函数大全--有时候我们只需要知道名字。
- C++常用字符串处理函数及使用示例
- 字符串处理