【问题标题】:How can I remove multiple sub-string from a string?如何从字符串中删除多个子字符串?
【发布时间】:2014-09-22 13:28:54
【问题描述】:

我有一个string,看起来像这样:

string body = "<p>Dear Usr\r<br /> \r<br />See the following-\r<br /> \r<br />JN: 19\r<br />Site:  \r<br />Description: \r<br />Work Order: \r<br /> \r<br />A listing of the works completed.\r<br />Thank you .\r<br />\r<br />\r<br />\r<br /> <https://running.fielders.com/OpenEmail/ChipCo042336/email@email.com/invs-693-285> <http://email.fielders.com/wf/open?upn=ADusIqwpYMLBRw2zAWXSKaHGA8vIY6xblvtU1D07Dfl99tcMOndfzsfNIZAug7FWHwvu6euZRgdGMOicT1XrX-2BWhviOs0Ze2NWM-2FHUPwrZ5HDwgQqeiA-2BiBSIR6BsFs4pFEbmpYxQgDSEaDAZDjUJG3pPNWBCOAMhMX-2BtJ-2Baza0d-2FeipGGk1nzAI2FMUHPpU69cAr1GbPxXed-2FuQxAHEGg-3D-3D></p>"

现在,我希望能够删除 string 末尾的两个 URLsURLs 周围的“”标签:

第一个:

<https://running.fielders.com/OpenEmail/ChipCo042336/email@email.com/invs-693-285>

第二个:

<http://email.fielders.com/wf/open?upn=ADusIqwpYMLBRw2zAWXSKaHGA8vIY6xblvtU1D07Dfl99tcMOndfzsfNIZAug7FWHwvu6euZRgdGMOicT1XrX-2BWhviOs0Ze2NWM-2FHUPwrZ5HDwgQqeiA-2BiBSIR6BsFs4pFEbmpYxQgDSEaDAZDjUJG3pPNWBCOAMhMX-2BtJ-2Baza0d-2FeipGGk1nzAI2FMUHPpU69cAr1GbPxXed-2FuQxAHEGg-3D-3D>

string 的内容可以改变,URL 也可以改变,除了基本 URLs,它们是 http://email.fielders.comhttps://running.fielders.com 我知道我需要搜索这些基本网址,删除 &lt; 然后删除,直到我点击下一个 &gt; 但我不太明白。

我已经尝试了几个小时玩这个:

body = Regex.Replace(body, @"\s*?(?:\<http://email.fielders.com*?\>|\<https://running.fielders.com/OpenEmail/*?\>)", String.Empty);

但没有运气。

【问题讨论】:

    标签: c# regex string substring


    【解决方案1】:

    试试这个:

    var newString = Regex.Replace(myString, @"(<http://email\.fielders\.com[^>]+>|<https://running\.fielders\.com[^>]+>)", "");
    

    对于两个 URL,匹配基本字符和所有字符,直到找到 &gt;

    <http://email\.fielders\.com[^>]+>
    

    【讨论】:

      【解决方案2】:

      您可以使用以下正则表达式。

      Regex.Replace(body, @"<https?://(?:email|running)\.fielders\.com[^>]+>", "");
      

      Ideone Demo

      【讨论】:

        【解决方案3】:
        <((?:http|https):\/\/(?:email\.fielders\.com|running\.fielders\.com)(?:(?![<>]).)*)>
        

        试试这个。查看演示。

        http://regex101.com/r/kM7rT8/7

        【讨论】:

          猜你喜欢
          • 2013-08-20
          • 2017-04-30
          • 2019-09-08
          • 1970-01-01
          • 2011-10-15
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多