【问题标题】:Extract the line from sentence using first and end word使用第一个词和最后一个词从句子中提取行
【发布时间】:2016-04-20 06:13:45
【问题描述】:

我想用空格替换句子中的行。这里是:

<p style="margin-top:0pt; margin-bottom:10pt; line-height:115%; font-size:12pt">
    <span style="font-family:Calibri;font-weight:bold; color:#ff0000">Evaluation Only. Created with Aspose.Words. Copyright 2003-2016 Aspose Pty Ltd.</span>
</p>

所以我想从“评估”一词中提取“有限公司”这一行。带空格的单词并获取该行的其余部分。像这样的:

<p style="margin-top:0pt; margin-bottom:10pt; line-height:115%; font-size:12pt">
    <span style="font-family:Calibri; font-weight:bold; color:#ff0000"></span>
</p>

【问题讨论】:

  • 这将始终是&lt;p&gt;&lt;span&gt; 和其中的文字吗?
  • 您在寻找 .NET 正则表达式解决方案吗?还是 Java、Perl 等?
  • @AndyLamb .net 正则表达式
  • 您想删除每个跨度的内部 html 或删除以“Evaluation”开头并以“Ltd”结尾的每一行。哥们,你需要在这里设置一些规则。!
  • 这将捕获所需的字符串:- regex101.com/r/zP0tO0/1 不清楚您想要什么,但您可以检查:- ideone.com/QLGw1g

标签: c# regex replace


【解决方案1】:

你可以通过类似javascript来获取它

document.getElementbyId("your span id").innerHtml = 
                   "what text you want here";

【讨论】:

  • 我在 c# 中使用这个
  • OP 专门寻找 C# Regex 解决方案而不是 java 脚本解决方案。
【解决方案2】:

我在火车上,在我的手机上,所以下面的例子在语法上可能不是 100% 正确,但你可以使用 Regex.Replace 方法。

string output = Regex.Replace(input, "Evaluation.*Ltd\.", string.Empty);

【讨论】:

    【解决方案3】:

    我得到了可行的解决方案

    Match Line = Regex.Match(str, @"Evaluation\s*(.+?)\s*Ltd.");
    str = str.Replace(Line.ToString(), "");
    

    【讨论】:

      【解决方案4】:

      使用 HtmlAgilityPack 加载 Html 文件。

      打开文件:

      HtmlDocument htmlDocument = new HtmlDocument();
      htmlDocument.LoadHtml(myHtmlString);
      

      然后删除节点:

      foreach(var descendant in htmlDocument.DocumentNode.Descendants("span").ToList())
      descendant.Remove()
      

      然后获取代表HTML文件的字符串:

      string htmlWithoutStyle = htmlDocument.DocumentNode.OuterHtml;
      

      更多示例请参考链接: http://www.mikesdotnetting.com/article/273/using-the-htmlagilitypack-to-parse-html-in-asp-net/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-04
        • 1970-01-01
        • 2012-03-21
        • 1970-01-01
        • 2020-01-12
        • 2021-12-27
        相关资源
        最近更新 更多