欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來到入門教程網(wǎng)!

C#教程

當前位置:主頁 > 軟件編程 > C#教程 >

C# 檢索不區(qū)分大小寫并高亮顯示實例詳解

來源:本站原創(chuàng)|時間:2020-01-10|欄目:C#教程|點擊: 次

C# 檢索不區(qū)分大小寫并高亮顯示實例詳解

  今日,碰到一個問題:如何在網(wǎng)頁中高亮顯示不區(qū)分大小寫的關(guān)鍵字

  例如:文本abcaBcabCaBCabcaBCa,關(guān)鍵字bc,在不區(qū)分大小寫的情況,一共有6個匹配項。

  則在網(wǎng)頁中顯示的是abcaBcabCaBCabcaBCa。

  很多人,想到是replace函數(shù)。但是在c# 中replace函數(shù)無法解決字母大小寫問題。

  例如示例上看,bc,Bc,bC,BC都被搜索到了,卻不能統(tǒng)一替換為一個文本

       以上文字轉(zhuǎn)自大牛“萬倉一黍“的文章--”高亮顯示不區(qū)分大小寫的關(guān)鍵字——ASP“。

       但是他的文章寫得是ASP版本,今天我寫得是C#版本;下面說說解決辦法。

   解決辦法:運用 IndexOf

            IndexOf(String, Int32, StringComparison)

            指定的字符串在當前 String 對象中的第一個匹配項的索引。

參數(shù)

value
類型: System. String 
要搜尋的字符串。
startIndex
類型: System. Int32 
搜索起始位置。
comparisonType
類型: System. StringComparison 
指定搜索規(guī)則的枚舉值之一。
(OrdinalIgnoreCase:使用序號排序規(guī)則并忽略被比較字符串的大小寫,對字符串進行比較。)

代碼

/// <summary>
    /// 高亮查找關(guān)鍵字。
    /// </summary>
    /// <param name="str">文本。</param>
    /// <param name="keyword">關(guān)鍵字</param>
    /// <returns>含高亮標識的文本。</returns>
    /// <remarks>
    ///  1、字母不區(qū)分大小寫。 
    ///  2、CssClass 名稱為 highlight。
    /// </remarks>
    private string HighLightKeyword(string str, string keyword)
    {
      int index;
      var startIndex = 0;
      const string highLightBegin = "<span class='highlight'>";
      const string highLightEnd = "</span>";
      var length = highLightBegin.Length + keyword.Length;
      var lengthHighlight = length + highLightEnd.Length;

      while ((index = str.IndexOf(keyword, startIndex, StringComparison.OrdinalIgnoreCase)) > -1)
      {
        str = str.Insert(index, highLightBegin).Insert(index + length, highLightEnd);
        startIndex = index + lengthHighlight;
      }

      return str;
    }

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

上一篇:C#獲取ListView鼠標下的Item實例

欄    目:C#教程

下一篇:C#常用正則驗證函數(shù)示例

本文標題:C# 檢索不區(qū)分大小寫并高亮顯示實例詳解

本文地址:http://mengdiqiu.com.cn/a1/C_jiaocheng/5998.html

網(wǎng)頁制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語言數(shù)據(jù)庫服務(wù)器

如果侵犯了您的權(quán)利,請與我們聯(lián)系,我們將在24小時內(nèi)進行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負任何責任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有