我的C#学习笔记(2)——字符串
1.字符串类型
再C#中字符串是System.String类的一个引用类型,但与其他引用类型不同的是,C#将字符串视为一个基本类型:可以声明为一个常量,并可以直接赋值。
字符串的操作
(1)索引
使用foreach或while对string来提取字符串中的字符,在这些情况下,操作都是只读的。
strng myString = "Hello world";
foreach (char c in myString)
{
Console.Write(c.ToString());
}
(2)连接
用+号连接字符串,但这种方法,在连接过程会将新的组合字符串分配新的空间,在一个较大的循环中会占用过多的资源,因此这种情况下会使用StringBuild类来代替连接操作符。
(3)抽取和定位
SubString方法在字符串中抽取所选的部分。这里给处此方法的两个重载形式:
string poem = "In Xanadu did Kubla Khan";
string reslut;
reslut = poem.Substring(10); //did Kubla Khan
reslut = poem.Substring(0,9); //In Xanadu
IndexOf()
该方法用于定位字符模式在字符串中出现的位置,有三种重载形势,Index(str, m ,n)表示str在字符串中从m到n之间第一次出现的位置。字符串的第一个位置为0,搜索结果为空时方法返回-1。
下面是一个确定字符串出现的方法:
//Method to count the occurrences of text in a given string
public static int CharCount(String strSource, String strToFind) { int iCount = 0; //string type hs index of 0 int iPos = strSource.IndexOf(strToFind); while (iPos != -1) { iCount++; iPos = strSource.IndexOf(strToFind, iPos + 1); } return iCount; } static void Main(string[] args)
{ string s = "abcdead"; int a=s.IndexOf("a",1); Console.Write(a); } (3)比较
System.String中有四个比较方法:Compare、CompareOrdinal、CompareTo和Equals,比较字符串的复杂性在区分大小写、语言、字符集及文化因素。
Compare( )方法是CompareTo( )方法的静态版本。只要使用“=”运算符,就会调用Equals( )方法,的以Equals( )方法与“=”是等价的。CompareOrdinal( )方法对两个字符串比较不考本地语言与文件。
(4)复制
Copy()静态方法。
CopyTo()方法。
(5)分割
split()此方法返回一个字符串数组,其中每个元素是一个单词。作为输入,split采用一个字符数组指示哪些字符被用作分隔符。本示例中使用了空格、逗号、句点、冒号和制表符。
char[] delimiterChars = { ' ', ',', '.', ':', '\t' }; 本文出自 51CTO.COM技术博客string text = "one\ttwo three:four,five six seven"; System.Console.WriteLine("Original text: '{0}'", text); string[] words = text.Split(delimiterChars); System.Console.WriteLine("{0} words in text:", words.Length); foreach (string s in words) { System.Console.WriteLine(s); } |


superpig
博客统计信息
热门文章
最新评论
友情链接