asp.net 關於字串內範圍截取的一點方法總結

來源:互聯網
上載者:User

廢話不多說,直接進入正題:
問題是:是這樣的字串,"dfsdg<2434>,dgdfg<35346>,dtr35<3w543>",提取"<"和">"裡面的內容?
對於這樣問題首先我們思路應該就是先把她們分組出來,然後再去判斷這對角括弧的位置,找到後,截取出來就 可以了。於是我分別用之前提出來的兩種方式 來實現,如下:
 1、原始字串截取方式,範例程式碼如下: 複製代碼 代碼如下:  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);
  }

運行結果如下:
2434
  35346
  3w543
2、應用Language-integrated Query (LINQ)(LINQ),範例程式碼如下: 複製代碼 代碼如下:  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();

運行結果如下:

第二種調試的工具是採用LINQPad來調試的。對於第二種裡面的let關鍵字,協助文檔的解釋如下:

let 關鍵字可以建立一個新的範圍變數,並且用您提供的運算式的結果初始化該變數。一旦用值初始化了該範圍變數,它就不能用於儲存其他值。但如果該範圍變數儲存的是可查詢的類型,則可以對其進行查詢。

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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.