如何去掉网页中抓出来内容的<...>标记,只留下文字和标点呢?

wenrenhehe 2009-03-03 04:16:37
假设字符串变量sContent中存放着网页中抓出来的内容如:
-----------------------------
<P class=MsoNormal style="TEXT-INDENT: 24.1pt; LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">山西信华汽车服务有限公司是上汽汽车授权的山西省第一家经销荣威品牌的<SPAN lang=EN-US>4S</SPAN>店,位于太原市太榆路<SPAN lang=EN-US>26</SPAN>号。公司依托上汽汽车<SPAN lang=EN-US>“</SPAN>以客户为中心、以市场为导向、仁义诚信<SPAN lang=EN-US>”</SPAN>的理念,凭借良好的信誉和诚信为本的原则面向广大用户。</SPAN></P><BR><br/><P class=MsoNormal style="TEXT-INDENT: 24.1pt; LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体"></SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">公司集汽车销售、保养维修、配件供应于一体,成立于<SPAN lang=EN-US>2003</SPAN>年<SPAN lang=EN-US>8</SPAN>月.是一支年轻团队,员工平均年龄较低,但整体素质较高,所以,公司的各方面都处于澎湃的朝气当中。公司组织结构较完善,由综合服务中心、销售服务中心、售后服务中心三个部门组成,其中又下设各自小组,工作分工明确,各部门之间相互衔接,能促使工作顺利快速完成。<SPAN lang=EN-US><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></SPAN></P><BR><br/><P class=MsoBodyTextIndent2 style="LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">公司的销售人员都经过上汽汽车专业培训,在服务方面,能够切合公司理念,全心全意为您服务。在销售流程方面,能够结合上汽汽车并联系实际地打造自己的流程,如从选购车型到试乘试驾、从签定合同到灵活的付款方面,从车辆介绍到提交上牌,并提供一站式购车服务,代办保险,车辆上户、车辆装潢等等方面,都最大限度地让客户从进销售大厅到离去都能感受到专业且温馨的服务理念。<SPAN lang=EN-US><o:p></o:p></SPAN></SPAN></P><BR><br/><P class=MsoNormal style="TEXT-INDENT: 24.1pt; LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">在售后方面,我公司秉承上汽汽车一贯的售后服务理念,不但最大限度的满足顾客的需求,做到物有所值,努力营造温馨亲切的服务标准,使您感受到倍可信赖的售后服务。体现出罗孚特有的服务特色<SPAN lang=EN-US>,</SPAN>并且售后服务的员工均经过上汽汽车专业的技术培训,能够熟练的运用上汽汽车指定的专业维修工具,严格按照其要求进行维修操作。</SPAN></P><BR><br/><P class=MsoNormal style="TEXT-INDENT: 24.1pt; LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体"></SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">                                         仁义诚信<SPAN lang=EN-US><SPAN style="mso-spacerun: yes"> </SPAN></SPAN>信华荣威 <SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN><o:p></o:p></SPAN></SPAN></P><BR><br/><P class=MsoNormal style="LINE-HEIGHT: 25pt; mso-line-height-rule: exactly" align=right><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体"><SPAN style="mso-spacerun: yes"></SPAN><SPAN style="mso-spacerun: yes"></SPAN></SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">山西信华汽车服务有限公司</SPAN></P>
------------------------------
现在想把其中所有的<...>标记去掉,只留下文字和标点,该怎么做呢,虚心请教大家
楼主很笨,只说明方法也还是不会做,高手最好给出具体可执行的语句:)
...全文
151 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
vbman2003 2009-03-03
  • 打赏
  • 举报
回复
一个思路,代码没严格测试:


static void GetString(string str)
{
int n = 0;
string[] ar = str.Split('>');
for (int i = 1; i < ar.Length ; i++)
{
string tmp = string.Empty;
n = ar[i].IndexOf('<');
if (n>0) tmp = ar[i].Substring(0, n).Trim();

if (tmp.Length>0 )
{
Console.WriteLine(tmp);
}
}
}
wenrenhehe 2009-03-03
  • 打赏
  • 举报
回复
谢谢,结贴
zilong32 2009-03-03
  • 打赏
  • 举报
回复


public static string convertText(string sourceHTML)
{
// string strResult = "";
// Regex r = new Regex(">(.*?)<", RegexOptions.IgnoreCase|RegexOptions.Compiled);
// MatchCollection mc = r.Matches(sourceHTML);
//
// if( mc.Count == 0 )
// {
// strResult = sourceHTML;
// }
// else
// {
// for(int i = 0; i < mc.Count; i++)
// {
// strResult += mc[i].Result("$1");
// }
// }

string strResult = "";
Regex r = new Regex("<(.*?)>", RegexOptions.IgnoreCase | RegexOptions.Compiled);
MatchCollection mc = r.Matches(sourceHTML);

if (mc.Count == 0)
{
strResult = sourceHTML;
}
else
{
strResult = sourceHTML;

for (int i = 0; i < mc.Count; i++)
{
strResult = strResult.Replace(mc[i].ToString(), "");
}
}

return strResult;
}
叶子 2009-03-03
  • 打赏
  • 举报
回复

go

create function [dbo].[clearhtml_V2] (@maco varchar(8000))
returns varchar(8000)
as
begin
declare @randchar_one nvarchar(200)
declare @randchar_two nvarchar(200)
if(charindex('<<',@maco)>0)
begin
set @randchar_one='D4678B36-B958-4274-B81E-BBA636CFB427';
set @randchar_two='49E374CC-9E1A-4850-897C-27074DE32E7F';
set @maco=replace(@maco,'<<',@randchar_one)
set @maco=replace(@maco,'>>',@randchar_two)
end
declare @i int
while 1 = 1
begin
set @i=len(@maco)
set @maco=replace(@maco, substring(@maco,charindex('<',@maco),
charindex('>',@maco)-charindex('<',@maco)+1),space(0))
if @i=len( @maco )
break
end

set @maco=replace(@maco,' ','')
set @maco=replace(@maco,' ','')
set @maco=ltrim(rtrim(@maco))
set @maco=replace(@maco,char(9),'')
set @maco=replace(@maco,char(10),'')
set @maco=replace(@maco,char(13),'')
if(charindex(@randchar_one,@maco)>0)
begin
set @maco=replace(@maco,'D4678B36-B958-4274-B81E-BBA636CFB427','<<')
set @maco=replace(@maco,'49E374CC-9E1A-4850-897C-27074DE32E7F','>>')
end
return (@maco)
end
go
declare @sContent varchar(8000)
set @sContent=
'<P class=MsoNormal style="TEXT-INDENT: 24.1pt; LINE-HEIGHT: 25pt; mso-line-height-rule: exactly">
<SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">山西信华汽车服务有限公司是上汽汽车授权的山西省第一家经销荣威品牌的 <SPAN lang=EN-US>4S </SPAN>店,位于太原市太榆路 <SPAN lang=EN-US>26 </SPAN>号。公司依托上汽汽车 <SPAN lang=EN-US>“ </SPAN>以客户为中心、以市场为导向、仁义诚信 <SPAN lang=EN-US>” </SPAN>的理念,凭借良好的信誉和诚信为本的原则面向广大用户。 </SPAN> </P> <BR> <br/> <P class=MsoNormal style="TEXT-INDENT: 24.1pt; LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"> <SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体"> </SPAN> <SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">公司集汽车销售、保养维修、配件供应于一体,成立于 <SPAN lang=EN-US>2003 </SPAN>年 <SPAN lang=EN-US>8 </SPAN>月.是一支年轻团队,员工平均年龄较低,但整体素质较高,所以,公司的各方面都处于澎湃的朝气当中。公司组织结构较完善,由综合服务中心、销售服务中心、售后服务中心三个部门组成,其中又下设各自小组,工作分工明确,各部门之间相互衔接,能促使工作顺利快速完成。 <SPAN lang=EN-US> <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> <o:p> </o:p> </SPAN> </SPAN> </P> <BR> <br/> <P class=MsoBodyTextIndent2 style="LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"> <SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">公司的销售人员都经过上汽汽车专业培训,在服务方面,能够切合公司理念,全心全意为您服务。在销售流程方面,能够结合上汽汽车并联系实际地打造自己的流程,如从选购车型到试乘试驾、从签定合同到灵活的付款方面,从车辆介绍到提交上牌,并提供一站式购车服务,代办保险,车辆上户、车辆装潢等等方面,都最大限度地让客户从进销售大厅到离去都能感受到专业且温馨的服务理念。 <SPAN lang=EN-US> <o:p> </o:p> </SPAN> </SPAN> </P> <BR> <br/> <P class=MsoNormal style="TEXT-INDENT: 24.1pt; LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"> <SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">在售后方面,我公司秉承上汽汽车一贯的售后服务理念,不但最大限度的满足顾客的需求,做到物有所值,努力营造温馨亲切的服务标准,使您感受到倍可信赖的售后服务。体现出罗孚特有的服务特色 <SPAN lang=EN-US>, </SPAN>并且售后服务的员工均经过上汽汽车专业的技术培训,能够熟练的运用上汽汽车指定的专业维修工具,严格按照其要求进行维修操作。 </SPAN> </P> <BR> <br/> <P class=MsoNormal style="TEXT-INDENT: 24.1pt; LINE-HEIGHT: 25pt; mso-line-height-rule: exactly"> <SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体"> </SPAN> <SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">                                         仁义诚信 <SPAN lang=EN-US> <SPAN style="mso-spacerun: yes"> </SPAN> </SPAN>信华荣威 <SPAN lang=EN-US> <SPAN style="mso-spacerun: yes"> </SPAN> <o:p> </o:p> </SPAN> </SPAN> </P> <BR> <br/> <P class=MsoNormal style="LINE-HEIGHT: 25pt; mso-line-height-rule: exactly" align=right> <SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体"> <SPAN style="mso-spacerun: yes"> </SPAN> <SPAN style="mso-spacerun: yes"> </SPAN> </SPAN> <SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">山西信华汽车服务有限公司 </SPAN> </P>'
select dbo.clearhtml_V2(@sContent)
/*
山西信华汽车服务有限公司是上汽汽车授权的山西省第一家经销荣威品牌的4S店,位于太原市太榆路26号。公司依托上汽汽车“以客户为中心、以市场为导向、仁义诚信”的理念,凭借良好的信誉和诚信为本的原则面向广大用户。公司集汽车销售、保养维修、配件供应于一体,成立于2003年8月.是一支年轻团队,员工平均年龄较低,但整体素质较高,所以,公司的各方面都处于澎湃的朝气当中。公司组织结构较完善,由综合服务中心、销售服务中心、售后服务中心三个部门组成,其中又下设各自小组,工作分工明确,各部门之间相互衔接,能促使工作顺利快速完成。公司的销售人员都经过上汽汽车专业培训,在服务方面,能够切合公司理念,全心全意为您服务。在销售流程方面,能够结合上汽汽车并联系实际地打造自己的流程,如从选购车型到试乘试驾、从签定合同到灵活的付款方面,从车辆介绍到提交上牌,并提供一站式购车服务,代办保险,车辆上户、车辆装潢等等方面,都最大限度地让客户从进销售大厅到离去都能感受到专业且温馨的服务理念。在售后方面,我公司秉承上汽汽车一贯的售后服务理念,不但最大限度的满足顾客的需求,做到物有所值,努力营造温馨亲切的服务标准,使您感受到倍可信赖的售后服务。体现出罗孚特有的服务特色,并且售后服务的员工均经过上汽汽车专业的技术培训,能够熟练的运用上汽汽车指定的专业维修工具,严格按照其要求进行维修操作。仁义诚信信华荣威山西信华汽车服务有限公司
*/

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧