• 做一个字符串搜索和替换最好的方法

  • 本文关于 c#,string
  • CodeGo.net > 做一个字符串搜索和替换最好的方法
  •  

    做一个字符串搜索和替换最好的方法



    c# string
    我需要编写特定关键字进行一个HTML高亮字符串中的代码。 如果我分隔的字符串列表,我愿做一个搜索和替换另一个字符串列表中的每个条目。什么是做的最有效的方法是什么? 我目前做了分流,然后foreach和一个Regex.Match。例如:
    string wordsToCheck = "this", "the", "and";
    String listArray[] = wordsToCheck.Split(',');
    string contentToReplace = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.";
    foreach (string word in listArray)
    {
     if (Regex.Match(contentToReplace, word + "\\s+", RegexOptions.IgnoreCase).Success)
     {
      return Regex.Replace(contentToReplace , word + "\\s+", String.Format("<span style=\"background-color:yellow;\">{0}</span> ", word), RegexOptions.IgnoreCase);
     }
    }
    
    我不知道这是最有效的方式单词列表来检查可以得到长期和上面的代码可能是一个循环来搜索和替换一堆内容的一部分。
    本文地址 :CodeGo.net/1482623/
    -------------------------------------------------------------------------------------------------------------------------
    1.不这样做,如果wordsToCheck可以通过修改 你的方法完美地工作而不正则表达式。只是做一个正常的与string.replace。 如果输入是安全的,你可以将一个正则表达式的所有关键字,例如:
    return Regex.Replace(contentToReplace, "(this|the|and)", String.Format("<span style=\"background-color:yellow;\">{0}</span> ", word), RegexOptions.IgnoreCase);
    其中,“这个||和”简直是wordsToCheck顺便说一句,你可能要考虑列表的关键字直接作为一个正则表达式,而不是分隔的列表。这会给你更多的灵活性。
    2. 您可以搜索“(此|中|结束)” CodeGo.net,并用火柴评估,这需要匹配并返回一个字符串调用Regex.Replace一次。 你可以通过你的字符串数组,并在每个然后用字符串加入它调用Regex.Escape构建匹配模式。|作为分隔符。
    3. 至于你考虑性能问题-跟1正则表达式,而他们是对的,甚至更好的性能(理论上)你编译的标志,尤其是你不会而改变你的正则表达式,你可以阅读这个。
    本文标题 :做一个字符串搜索和替换最好的方法
    本文地址 :CodeGo.net/1482623/
    1. 教思路,保存记录时,如何别处理“新增”与“保存”这两种情况呢?
    2. 添加表使用iTextSharp的/ iText的一个预先存在的PDF
    3. 压缩文件夹下的文件个数
    4. NHibernate的验证本地化与S#ARP架构
    5. Socket用新线程接收依然假死
    6. 方法为在泛型类型定义使用'参数'
    7. 这个控件顺序怎么弄
    8. 在新的Microsoft图表控件你怎么可以添加对数据点的垂直线
    9. WinForm连接数据库,连接串
    10. 加入从单独的API的共同作用的结果

     
    

    Copyright © 2017 CodeGo.net
    http://codego.net/xinwen/ 足球比分网 足球比分 医药招商网 邵阳县新闻