【急】求C#正则表达式取html元素的某些数据,在线等
<HTML><HEAD><TITLE>McsReport.CAB</TITLE></HEAD><BODY><!--<OBJECTCLASSID="clsid:5220cb...
<HTML>
<HEAD>
<TITLE>McsReport.CAB</TITLE>
</HEAD>
<BODY>
<!--<OBJECT CLASSID="clsid:5220cb21-c88d-11cf-b347-00aa00a28331">
<PARAM NAME="LPKPath" VALUE="LPKfilename.LPK">
</OBJECT>-->
<OBJECT ID="McsRpt"
CLASSID="CLSID:6BF283CB-2FF1-4CA6-A48E-1397B61058B6"
CODEBASE="McsReport.CAB#version=2,0,0,1">
</OBJECT>
</BODY>
</HTML>
上述是一个模板,
用正则匹配<OBJECT ></OBJECT >,用数组或者list返回满足的数据
要求:(1)匹配的时候,部分大小写... (2)页面已经被注释的<OBJECT>标签不要匹配进来
如上述的html返回的数据arry[0]="
<OBJECT ID="McsRpt"
CLASSID="CLSID:6BF283CB-2FF1-4CA6-A48E-1397B61058B6"
CODEBASE="McsReport.CAB#version=2,0,0,1">
</OBJECT>
"
不分大小写 就是有时候 标签是<Object></object>之类的,有些人写不规范的就是这样子了 展开
<HEAD>
<TITLE>McsReport.CAB</TITLE>
</HEAD>
<BODY>
<!--<OBJECT CLASSID="clsid:5220cb21-c88d-11cf-b347-00aa00a28331">
<PARAM NAME="LPKPath" VALUE="LPKfilename.LPK">
</OBJECT>-->
<OBJECT ID="McsRpt"
CLASSID="CLSID:6BF283CB-2FF1-4CA6-A48E-1397B61058B6"
CODEBASE="McsReport.CAB#version=2,0,0,1">
</OBJECT>
</BODY>
</HTML>
上述是一个模板,
用正则匹配<OBJECT ></OBJECT >,用数组或者list返回满足的数据
要求:(1)匹配的时候,部分大小写... (2)页面已经被注释的<OBJECT>标签不要匹配进来
如上述的html返回的数据arry[0]="
<OBJECT ID="McsRpt"
CLASSID="CLSID:6BF283CB-2FF1-4CA6-A48E-1397B61058B6"
CODEBASE="McsReport.CAB#version=2,0,0,1">
</OBJECT>
"
不分大小写 就是有时候 标签是<Object></object>之类的,有些人写不规范的就是这样子了 展开
2个回答
展开全部
/*
*下面这段代码能够满足你的需求:
*关键位置有注释
*/
List<string> result = new List<string>();
//匹配表达式使用懒惰模式,就能区分出多个匹配项([\\s\\S]+?)
string parttern = "(?<!\\<\\!--)\\<object[\\s\\S]+?\\</object\\>(?!--\\>)";
//匹配不区分大小写,使用匹配参数RegexOptions.IgnoreCase
Regex reg = new Regex(parttern, RegexOptions.IgnoreCase);
MatchCollection mc = reg.Matches(text);
foreach (Match m in mc)
{
result.Add(m.Value);
}
*下面这段代码能够满足你的需求:
*关键位置有注释
*/
List<string> result = new List<string>();
//匹配表达式使用懒惰模式,就能区分出多个匹配项([\\s\\S]+?)
string parttern = "(?<!\\<\\!--)\\<object[\\s\\S]+?\\</object\\>(?!--\\>)";
//匹配不区分大小写,使用匹配参数RegexOptions.IgnoreCase
Regex reg = new Regex(parttern, RegexOptions.IgnoreCase);
MatchCollection mc = reg.Matches(text);
foreach (Match m in mc)
{
result.Add(m.Value);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询