首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

请问正则表达

2012-09-09 
请教正则表达p styleMARGIN: 0in 0in 0pt classMsoNormalspan styleCOLOR: #1f497dspan sty

请教正则表达

<p style="MARGIN: 0in 0in 0pt" class="MsoNormal">
  <span style="COLOR: #1f497d">
  <span style="FONT-FAMILY: Calibri">Hello World</span>
  </span>
</p>
或者
<p>Hello World<p>

想用正则表达式,匹配出其中的正文"Hello World"。

请问这个表达式该如何写?

[解决办法]
额 var str = "html";
str = Regex.Replace("<[^>]+>","");

这个似乎就可以了吧
[解决办法]
(?is)<span[^>]+>([^<]+)</span>
(?is)<p>([^<]+)<p>

取group[1].value
[解决办法]
string temp = @"<p style=""MARGIN: 0in 0in 0pt"" class=""MsoNormal"">
<span style=""COLOR: #1f497d"">
<span style=""FONT-FAMILY: Calibri"">Hello World</span>
</span>
</p>";
Console.WriteLine(Regex.Match(temp, @"(?is)(?<=<p.*?>)(?!\s*<)[^<]+").Value);
[解决办法]
二楼可以满足楼主的需求
但是我想楼主更想看到匹配而非替换
所以4楼备份
[解决办法]
去掉HTML标签就是了

C# code
 /// <summary>        /// 去掉HTML标签        /// </summary>        /// <param name="strHtml"></param>        /// <returns></returns>        public static string stripHtml(string strHtml)        {            Regex objRegExp = new Regex("<(.|\n)+?>");            string strOutput = objRegExp.Replace(strHtml, "");            strOutput = strOutput.Replace("<", "");            strOutput = strOutput.Replace(">", "");            return strOutput;        }
[解决办法]
C# code
@"(?<=<p[^>]*>(\s*<[^<>]+>)*)[^<>]+(?=(<[^<>]+>\s*)*</p>)"
[解决办法]
可以试试
探讨
额 var str = "html";
str = Regex.Replace("<[^>]+>","");

这个似乎就可以了吧

热点排行