使用Perl Hash进行文本转换

时间:2019-07-11 15:05:55

标签: html xml perl text-processing

我想进行一些文本转换以转换以下文本片段:

dog<link rel="stylesheet" href="ww.css"><h2>food</h2> a cat <h2>water</h2>
</>
  

虽然原始格式是这样的(上面修改的格式是   以便更轻松地拧动Perl代码。):

dog
<link rel="stylesheet" href="ww.css"><h2>food</h2> a cat <h2>water</h2>
</>

收件人:

dog<link rel="stylesheet" href="ww.css"><h2>food</h2> a cat <h2>water</h2>
</> 
food
@@@LINK=dog
</>
water
@@@LINK=dog
</>
  

基本上,我需要提取h2的值-foodwater并   他们引用的是原始单词,在这种情况下为dog

我正在使用Perl来做到这一点:

use strict;
use warnings;

use feature ':all';
open(DICT, "<", "a");
while(<DICT>){
    my %h;
    my $hw=$1  if /(^.*$)(?=<link rel)/;
    while (m/<subject-area>(.*?)<subject-area>/g) {
        $h{$1}=$hw;
    }

    print "$_";
    for my $key (keys %h) {
        print "$key\n\@\@\@LINK=$h{$key}\n</>" 
    };

}

但是此Perl代码将打印出与上一个相同的内容。

0 个答案:

没有答案