欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

asp.net 關(guān)于字符串內(nèi)范圍截取的一點(diǎn)方法總結(jié)

 更新時間:2010年02月28日 10:20:43   作者:  
前兩天有一位網(wǎng)友提出了一個字符串內(nèi)截取字符串的問題,除了用普通的字符串截取的方式外,我推薦的是用LINQ方式來截取。兩者實際上差別不是很大,都是采用字符串截取方式,但后者從寫法和觀察效果會比前者簡單實用得多。
廢話不多說,直接進(jìn)入正題:
問題是:是這樣的字符串,"dfsdg<2434>,dgdfg<35346>,dtr35<3w543>",提取"<"和">"里面的內(nèi)容?
對于這樣問題首先我們思路應(yīng)該就是先把她們分組出來,然后再去判斷這對尖括號的位置,找到后,截取出來就 可以了。于是我分別用之前提出來的兩種方式 來實現(xiàn),如下:
 1、原始字符串截取方式,示例代碼如下:
復(fù)制代碼 代碼如下:

  string str="dfsdg<2434>,dgdfg<35346>,dtr35<3w543>";
  string[] strGroup=str.Split(',');
  foreach(var s in strGroup)
  {
  int left=s.IndexOf('<');
   int right=s.LastIndexOf('>');
   s.Substring(left+1,right-left-1);
   Console.WriteLine(s);
  }

運(yùn)行結(jié)果如下:
2434
  35346
  3w543
2、應(yīng)用語言集成查詢(LINQ),示例代碼如下:
復(fù)制代碼 代碼如下:

  string str="dfsdg<2434>,dgdfg<35346>,dtr35<3w543>";
  var result=from s in str.Split(',')
     let left=s.IndexOf('<')
     let right=s.LastIndexOf('>')
     select s.Substring(left+1,right-left-1);
  result.Dump();

運(yùn)行結(jié)果如下:
    
第二種調(diào)試的工具是采用LINQPad來調(diào)試的。對于第二種里面的let關(guān)鍵字,幫助文檔的解釋如下:

let 關(guān)鍵字可以創(chuàng)建一個新的范圍變量,并且用您提供的表達(dá)式的結(jié)果初始化該變量。一旦用值初始化了該范圍變量,它就不能用于存儲其他值。但如果該范圍變量存儲的是可查詢的類型,則可以對其進(jìn)行查詢。

好了,對于這個問題我就總結(jié)到這里了,希望對他人有幫助,也歡迎大家有更好的方法和思路來解決這個問題的,歡迎大家留言,本人將感激不盡!

相關(guān)文章

最新評論