【问题标题】:Extract portion of text in ASP.NET在 ASP.NET 中提取部分文本
【发布时间】:2013-08-16 04:40:09
【问题描述】:

我需要使用包含在其中的一对标记来提取字符串的子集。例如,给定以下字符串:

Lorem ipsum dolor sit amet,consectetur adipiscing elit。 <!--extract-->Sed nec luctus magna, ac tincidunt metus。保护者 sodales iaculis ipsum sed blandit.<!--/extract--> Quisque tincidunt nulla sapien,非 faucibus turpis aliquam。

如何提取和之间的所有内容(但不是标签本身)?字符串每次都会有不同的长度,但总是包含标记。

我一直在搞乱String.SubString(),但我正在努力可靠地计算开始/结束索引。请注意,开始/结束标记将始终具有特定值以允许它们被定位。

提前致谢。

【问题讨论】:

    标签: asp.net .net vb.net asp.net-4.5


    【解决方案1】:

    此代码将帮助您实现您的要求

        string s="adipiscing elit.<!--extract-->Sed nec luct<!--/extract-->"
        string p = "<!--extract-->";
        string q = "<!--/extract-->";
        int a = s.IndexOf("<!--extract-->");
    
        int b = s.IndexOf("<!--/extract-->");
        string result= s.Substring(a + p.Length, b - (a + p.Length));
    

    【讨论】:

      【解决方案2】:

      从所需字符串的两侧修剪时,我总是发现Substring 两次更容易

      string myString = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. <!--extract-->Sed nec luctus magna, ac tincidunt metus. Maecenas sodales iaculis ipsum sed blandit.<!--/extract--> Quisque tincidunt nulla sapien, non faucibus turpis aliquam at.";
      myString = myString.Substring(myString.IndexOf("<!--extract-->") + "<!--extract-->".Length);
      myString = myString.Substring(0, myString.IndexOf("<!--/extract-->"));
      

      或者,在一次调用中做同样的事情(更丑)

      string myString = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. <!--extract-->Sed nec luctus magna, ac tincidunt metus. Maecenas sodales iaculis ipsum sed blandit.<!--/extract--> Quisque tincidunt nulla sapien, non faucibus turpis aliquam at.";
      myString = myString.Substring(myString.IndexOf("<!--extract-->") + "<!--extract-->".Length, myString.IndexOf("<!--/extract-->") - myString.IndexOf("<!--extract-->") - "<!--extract-->".Length);
      

      【讨论】:

      • 非常感谢。超级快速的响应和金钱上的权利!干杯。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多