同桌上课用手指进去了好爽_欧美丰满熟妇xxⅹⅹ性大i_成人av天天日天天拍拍_猛男gay帅男gay男男同志_欧美va天堂在线观看_人妻无码av中文系列三里桃花_亚欧免费无码在线观看_久久久精品国产亚洲av水_日韩在线免费看污污污_2021无码专区人妻系列日韩

首頁 優(yōu)化推廣 C#字符串的使用筆記

C#字符串的使用筆記

來源: | 時間:2011/3/15 14:57:20 |

字符串的使用


一、標(biāo)記
標(biāo)記(tokenizing)是從文本中提取具體內(nèi)容的過程。
下面的代碼從句子中提取單詞,并把它們輸出到控制臺。
class mytokenizing
{
   static void Main(string[ ] args)
   {
      string mystring="I like this food,are you?";
      char[] separators={ , , , ? , : , ! };
      int startpos=0;
      int endpos=0;
      do
      {
         endpos=mystring.IndexOfAny(separators,startpos);
         if ( endpos==-1 ) endpos=mystring.Length;
         if ( endpos!=startpos )
              Console.WriteLine(mystring.Substring( startpos,(endpos-startpos)));
         startpos=(endpos+1);
      }while(startpos<mystring.Length);
   }
}
   <== 輸出
like
this
food
are
you

二、顛倒字符串次序
class myreverse
{
   static void Main(string [] args)
   {
      string mystring="你們好";
      char[] mychars=mystring.ToCharArray( );
      Array.Reverse(mychars);
      Console.WriteLine(mystring);
      Console.WriteLine(mychars);
   }
}
任何繼承于Array的類都能利用Reverse( )方法為數(shù)組中的元素重新排序。

三、字符串的插入、刪除和替換
示例文件test.txt為字符串的來源。下面代碼以Unicode格式讀取文本。確保文件保存為讀取時的格式。例如記事本允許將代碼保存為Unicode:
aaaaaaaa,bbbbbbbb,cccccc
dddddddd,eeeeeeee,ffffff
gggggggg,hhhhhhhh,iiiiii
jjjjjjjj,kkkkkkkk,llllll

下面代碼加載數(shù)據(jù)并處理數(shù)據(jù)的測試工具。測試結(jié)果發(fā)送給控制臺。
class myprocessfile
{
   static void Main(string [] args)
   {
      const string myName="test.txt";
      Stream readLine;
      TextWirter writeLine;
      StringBuilder sb;
      readLine=File.OpenRead(myName);
      WriteLine=Console.Out;
      StreamReader readLineSReader=new StreamReader(readLine,Encoding.Unicode);
      readLineSReader.BaseStream.Seek(0,SeekOrigin.Begin);
      while(readLineSReader.Peek()>-1)
      {
         sb=new StringBuilder(readLineSReader.ReadLine());
         //插入字符串操作語句如:sb.Append(",123"); 
         Console.WriteLine(sb.ToString());
      }
   }
}

在結(jié)尾添加一列內(nèi)容:
//displays aaaaaaaa,bbbbbbbb,cccccc,xxxxx
//......
sb.Append(",xxxxx");

第一列可以使用下面的代碼刪除:
//displays bbbbbbbb,cccccc
//......
sb.Remove(0,sb.ToString().IndexOf( , )+1);

替換分隔符:
//aaaaaaaa+bbbbbbbb+cccccc
sb.Replace( , , + );

添加行號(lineNumber已經(jīng)在前面某處聲明過為前提):
sb.Insert(0,lineNumber.ToString("000 "));
lineNumber++;

//displays
//000 aaaaaaaa,bbbbbbbb,cccccc
//001 dddddddd,eeeeeeee,ffffff
//002 gggggggg,hhhhhhhh,iiiiii
//003 jjjjjjjj,kkkkkkkk,llllll

字符串操作


1、從字符串中提取子串
StringBuilder 類沒有支持子串的方法,因此必須用String類來提取。
string mystring="My name is ynn.";
//Displays "name is ynn."
Console.WriteLine(mystring.Substring( 3 ));
//Displays "ynn"
Console.WriteLine(mystring.Substring( 11,3 ));

2、比較字符串
String 類有四種方法:Compare( )、CompareTo( )、CompareOrdinal( )、Equals( )。
Compare( )方法是CompareTo( )方法的靜態(tài)版本。只要使用“=”運(yùn)算符,就會調(diào)用Equals( )方法,的以Equals( )方法與“=”是等價的。CompareOrdinal( )方法對兩個字符串比較不考本地語言與文件。
示例:
int result;
bool br

服務(wù)熱線

153 8323 9821

功能和特性

價格和優(yōu)惠

網(wǎng)站和維護(hù)

推廣和優(yōu)化

微信服務(wù)號