免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3458 | 回复: 1
打印 上一主题 下一主题

如何使用perl实现多行内容替换。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-03-29 18:05 |只看该作者 |倒序浏览
问题如下
要处理的内容
  1. style='font-family:SimHei;mso-ascii-font-family:Arial'>【汽柴油价格</span>20</a><span

  2. style='mso-bookmark:_Toc286325470'><span lang=ZH-CN style='font-family:SimHei;

  3. mso-ascii-font-family:Arial'>日起每吨提高</span>350</span><span style='mso-bookmark:

  4. _Toc286325470'><span lang=ZH-CN style='font-family:SimHei;mso-ascii-font-family:

  5. Arial'>元】</span></span></h4>

  6. style='font-family:SimHei;mso-ascii-font-family:Arial'>【发改委</span>:</a><span

  7. style='mso-bookmark:_Toc286325471'><span lang=ZH-CN style='font-family:SimHei;

  8. mso-ascii-font-family:Arial'>对股权投资企业适度监管】</span></span></h4>
复制代码
这是html元素,我想使用替换而非匹配捕获的方法得到如下结果
  1. style='font-family:SimHei;mso-ascii-font-family:Arial'>【汽柴油价格20日起每吨提高350元】</span></span></h4>
  2. style='font-family:SimHei;mso-ascii-font-family:Arial'>【发改委:对股权投资企业适度监管】</span></span></h4>
复制代码
想了半天也没有想到,
请各位perl 粉 帮忙写个替换实现。

论坛徽章:
0
2 [报告]
发表于 2011-04-03 14:31 |只看该作者
把下面的程序打印成你想要的文件应该可以实现你要的功能。
open FILEIN, "<c.txt";

while(<FILEIN>){
   if(!/\<\/h4\>/){
       chomp;
       $lines .= $_;
   }
   else{
       $lines .= $_;
       chomp $lines;
       $lines =~ s/\<.*?\>//g;
       print $lines."</span></span></h4>\n";
       $lines = "";
   }   
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP