使用cgi

时间:2019-05-16 15:44:15

标签: html5 perl unix cgi

我正在使用CGI修改从搜索引擎加载的html文件。在此文件中,存在<BR>个标记。我只想删除某些<BR>标签。

CGI的工作方式是将整个HTML文件放入一个数组中。然后,每一行都要单独处理,以完成各种任务,例如显示修改等。我的问题是我需要一种方法来在特定范围内定位
标记,但是该范围是不固定的,因为取决于所搜索的HTML文件它发出了。

到目前为止,我一直尝试遍历每一行。然后检查该行中是否有<BR><br>忽略了大小写。然后,如果存在,我将其删除。但是,这种方式会删除文件中每个<BR>标记,这不是我想要的。

这是加载的html文件,我将使用一个示例进行单个搜索。

<b>Issue Date </b>Dec 1998<br>
  <b>Replaces </b>TR-NWT-001042 Issue01<br>
 <ul id="myNav"> <a href="#ORD">ORDERING INFORMATION</a><BR> <BR><B>ABSTRACT: </B>This document replaces TR-NWT-001042 and TR-NWT-001042-disk.<BR>
  <BR>This document presents the view of Telcordia on generic requirements for the information model of the system management interface<BR>
  between Management Systems and Synchronous Optical Network (SONET) Network Elements (NEs) using Open System Interconnection (OSI)<BR>
  management services and protocols.<BR>

我要做的是在摘要之后:我想添加<P>。当前正在发生的情况是,每行末尾都有一个<BR>,我想删除此点之后每行末尾的所有<BR>

在CGI文件中起作用了,这是我用来删除文件中所有<BR>的代码,我不确定如何只删除选定的金额

foreach $line(@input) {

# Put if statement, if line ends with break, remove break. 

    if ($line =~ m/<BR>$/i) {
        $line = substr $line, 0, -5;
    }

$ line上方的每一行都包含字符串格式的html,@ input是html内容的存储位置。

当前应该发生的是从搜索引擎呈现html的方式,在每行的末尾添加<BR>。这不允许正确的文字换行。我想使用<P>标签包裹文本,并删除每行末尾的<BR>,迫使其转到下一行。

0 个答案:

没有答案