【问题标题】:Removing part of a string C#删除部分字符串 C#
【发布时间】:2012-07-03 13:30:38
【问题描述】:

我在我的网站上使用富文本编辑器,并且我使用标签来显示用户上次使用该框时输入的内容,但是当他提交代码时,它包含标签中的 html。当我提交表单时,它会写下以下内容......

<span id="bodyContent_header1"> <div style"float:right">The Text On The Page </div> </span>

我需要从代码中删除 &lt;span id="bodyContent_header1"&gt; &lt;/span&gt; 并保留其余部分。任何人都可以帮忙吗?此外,代码可能包含其他跨度标签,因此每次只应删除此标签。

【问题讨论】:

  • 一些代码示例肯定会有所帮助。
  • 我认为您可以使用正则表达式或使用 string.split 或 .substring 来做到这一点。

标签: c# string split tokenize


【解决方案1】:

鉴于此类字符串是单行,您可以使用正则表达式 ^&lt;span[^&gt;]+&gt;|&lt;/span&gt;$ 替换最外面的 &lt;span&gt; 标签,如下所示:

string strRegex = @"^<span[^>]+>|</span>$";
RegexOptions myRegexOptions = RegexOptions.Multiline | RegexOptions.Singleline;
Regex myRegex = new Regex(strRegex, myRegexOptions);
string strTargetString = @"<span id=""bodyContent_header1""> <div style""float:right"">The Text On The Page </div> </span>\n";
string strReplace = @"";
return myRegex.Replace(strTargetString, strReplace);

这适用于RegexHero

【讨论】:

    【解决方案2】:

    这个正则表达式从这个标签中选择数据

    (?<=<span id="bodyContent_header1">)(.+)(</span>)
    

    用一个不可能的正则表达式替换来解决这个任务

    【讨论】:

      猜你喜欢
      • 2017-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-31
      相关资源
      最近更新 更多