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

怎么用正则表达式来删除字符串里面的一个<input>元素?

2012-02-05 
如何用正则表达式来删除字符串里面的一个input元素??急!!!字符串如下,想删除“ INPUTTYPEBUTTONVALUE

如何用正则表达式来删除字符串里面的一个<input>元素??急!!!
字符串如下,想删除“ <INPUT   TYPE=BUTTON     VALUE= '预订 '   onclick=javascript:onBooking( 'eLong ', '40101001 ', '0016 ', '0 ');   CLASS=eButton> ”,我这里有个表达式

$s   =~s/ <input[^> ]*\/?> //img;
结果是没有删除,找不出原因,会不会是里面有\r\n的缘故?

我在之前用这个表达式删除   $s=~/\r?\n//img;也还是不行

高手指点一下


<TD   CLASS=PRICEROW     ALIGN=CENTER   style= 'width:6%; '   NOWRAP> <FONT   SIZE=-2   CLASS=smallPrice>   580 </FONT> </TD>   <TD   CLASS=PRICEROW   ALIGN=CENTER   style= 'width:10%; '   > <INPUT   TYPE=BUTTON     VALUE= '预订 '   onclick=javascript:onBooking( 'eLong ', '40101001 ', '0016 ', '0 ');   CLASS=eButton> </TD> <tr> <td   CLASS=PRICEROW   ROWSPAN=1   >   <FONT   SIZE=-2   CLASS=smallPrice> 高级标间 </FONT>

[解决办法]
$s =~s/ <input[^> ]*> //img;

[解决办法]
感觉你的写法也是可以的。

最好给出一个完整的Perl脚本说明你的问题,把测试用例也写在里面。

[解决办法]
#是呀,我测试也没问题呀.

#!/usr/bin/perl -w

$str= " <TD CLASS=PRICEROW ALIGN=CENTER style= 'width:6%; ' NOWRAP> <FONT SIZE=-2 CLASS=smallPrice> 580 </FONT> </TD> <TD CLASS=PRICEROW ALIGN=CENTER style= 'width:10%; ' > <INPUT TYPE=BUTTON VALUE= '预订 ' onclick=javascript:onBooking( 'eLong ', '40101001 ', '0016 ', '0 '); CLASS=eButton> </TD> <tr> <td CLASS=PRICEROW ROWSPAN=1 > <FONT SIZE=-2 CLASS=smallPrice> 高级标间 </FONT> ";
if ($str=~/ <input[^> ]*\/?> /im)
{
print "$& ";
}

#结果
> <INPUT TYPE=BUTTON VALUE= '预订 ' onclick=javascript:onBooking( 'eLong ', '40101001 ', '0016 ', '0 '); CLASS=eButton>

热点排行