我现在有以下一段HTML文本
<TABLE style="WIDTH: 738pt; BORDER-COLLAPSE: collapse" border=0 cellSpacing=0 cellPadding=0 width=983>
<COLGROUP>
<COL style="WIDTH: 53pt; mso-width-source: userset; mso-width-alt: 2272" width=71>
<COL style="WIDTH: 49pt; mso-width-source: userset; mso-width-alt: 2080" width=65>
<COL style="WIDTH: 76pt; mso-width-source: userset; mso-width-alt: 3232" width=101>
<COL style="WIDTH: 84pt; mso-width-source: userset; mso-width-alt: 3584" width=112>
<COL style="WIDTH: 76pt; mso-width-source: userset; mso-width-alt: 3232" width=101>
<COL style="WIDTH: 101pt; mso-width-source: userset; mso-width-alt: 4320" span=2 width=135>
<COL style="WIDTH: 59pt; mso-width-source: userset; mso-width-alt: 2528" width=79>
<COL style="WIDTH: 68pt; mso-width-source: userset; mso-width-alt: 2880" width=90>
<COL style="WIDTH: 71pt; mso-width-source: userset; mso-width-alt: 3008" width=94>
<TBODY>
<TR style="HEIGHT: 71.25pt" height=95>
<TD style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent; WIDTH: 102pt; HEIGHT: 71.25pt; BORDER-TOP: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid" class=xl66 height=95 width=136 colSpan=2><FONT face=宋体>本单位数量<BR>(名)</FONT></TD>
<TD style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BACKGROUND-COLOR: transparent; WIDTH: 76pt; BORDER-TOP: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid" class=xl66 width=101><FONT face=宋体>下派数量<BR>(人次)</FONT></TD>
</TR></TBODY></TABLE>
================================================================
现在求一段正则表达式,能够使上述输出为
<TABLE>
<TR>
<TD colSpan=2>本单位数量(名)</TD>
<TD>下派数量(人次)</TD>
</TR>
</TABLE>
<TABLE style="WIDTH: 738pt; BORDER-COLLAPSE: collapse" border=0 cellSpacing=0 cellPadding=0 width=983>
<COLGROUP>
<COL style="WIDTH: 53pt; mso-width-source: userset; mso-width-alt: 2272" width=71>
<COL style="WIDTH: 49pt; mso-width-source: userset; mso-width-alt: 2080" width=65>
<COL style="WIDTH: 76pt; mso-width-source: userset; mso-width-alt: 3232" width=101>
<COL style="WIDTH: 84pt; mso-width-source: userset; mso-width-alt: 3584" width=112>
<COL style="WIDTH: 76pt; mso-width-source: userset; mso-width-alt: 3232" width=101>
<COL style="WIDTH: 101pt; mso-width-source: userset; mso-width-alt: 4320" span=2 width=135>
<COL style="WIDTH: 59pt; mso-width-source: userset; mso-width-alt: 2528" width=79>
<COL style="WIDTH: 68pt; mso-width-source: userset; mso-width-alt: 2880" width=90>
<COL style="WIDTH: 71pt; mso-width-source: userset; mso-width-alt: 3008" width=94>
<TBODY>
<TR style="HEIGHT: 71.25pt" height=95>
<TD style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent; WIDTH: 102pt; HEIGHT: 71.25pt; BORDER-TOP: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid" class=xl66 height=95 width=136 colSpan=2><FONT face=宋体>本单位数量<BR>(名)</FONT></TD>
<TD style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BACKGROUND-COLOR: transparent; WIDTH: 76pt; BORDER-TOP: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid" class=xl66 width=101><FONT face=宋体>下派数量<BR>(人次)</FONT></TD>
</TR></TBODY></TABLE>
================================================================
现在求一段正则表达式,能够使上述输出为
<TABLE>
<TR>
<TD colSpan=2>本单位数量(名)</TD>
<TD>下派数量(人次)</TD>
</TR>
</TABLE>
var reg=/(?:style[^>]+|<(?:col|/?tbody|/?font|br)[^>]*>)/gi;
html=html.replace(reg,'');
var str = '<TABLE style="WIDTH: 738pt; BORDER-COLLAPSE: collapse" border=0 cellSpacing=0 cellPadding=0 width=983><COLGROUP><COL style="WIDTH: 53pt; mso-width-source: userset; mso-width-alt: 2272" width=71><COL style="WIDTH: 49pt; mso-width-source: userset; mso-width-alt: 2080" width=65><COL style="WIDTH: 76pt; mso-width-source: userset; mso-width-alt: 3232" width=101><COL style="WIDTH: 84pt; mso-width-source: userset; mso-width-alt: 3584" width=112><COL style="WIDTH: 76pt; mso-width-source: userset; mso-width-alt: 3232" width=101><COL style="WIDTH: 101pt; mso-width-source: userset; mso-width-alt: 4320" span=2 width=135><COL style="WIDTH: 59pt; mso-width-source: userset; mso-width-alt: 2528" width=79><COL style="WIDTH: 68pt; mso-width-source: userset; mso-width-alt: 2880" width=90><COL style="WIDTH: 71pt; mso-width-source: userset; mso-width-alt: 3008" width=94><TBODY><TR style="HEIGHT: 71.25pt" height=95><TD style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent; WIDTH: 102pt; HEIGHT: 71.25pt; BORDER-TOP: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid" class=xl66 height=95 width=136 colSpan=2><FONT face=宋体>本单位数量<BR>(名)</FONT></TD><TD style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BACKGROUND-COLOR: transparent; WIDTH: 76pt; BORDER-TOP: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid" class=xl66 width=101><FONT face=宋体>下派数量<BR>(人次)</FONT></TD></TR></TBODY></TABLE>'
var reg1 = /(<(?!\/?TABLE|\/?TR|\/?TD)[^>]+>|\s+((?!colspan)[^><\s])+(?=[^>]*>))/ig;
alert(str.replace(reg1,''));
难点在哪你看到了吗。代表我都快崩溃了
<TABLE>
<TR>
<TD colSpan=2>本单位数量(名)</TD>
<TD>下派数量(人次)</TD>
</TR>
</TABLE>
我测试的结果是:<TABLE >
<TR >
<TD >本单位数量(名)</TD>
<TD >下派数量(人次)</TD>
</TR></TABLE>