in reply to Help translating into HTML
#!/bin/perl5 use strict; use warnings; my ( @K_array, @R_array ) = (); my $I = ''; my $out = qq(<c>\n); while (my $l = <DATA>) { my ( $code, $value ) = $l =~ /^(\w|\#)\s+(.*)\n$/; $I = $value if $code eq 'I'; if ( $code eq 'K' ){ $out .= "<p></p>\n<t>\n" unless @K_array; push @K_array, $value } elsif ( $code eq 'R' ){ $out .= "<r></r>\n" unless @R_array; push @R_array, "<li>$value</li>\n" } $out .= qq(<set name="temant">$value</set>\n) if $code eq 'S'; $out .= qq(<setflag param="$value"/>\n) if $code eq 'F'; $out .= "<!-- $value -->\n" if $code eq '#' } my $K; if ( $I ){ $K = $K_array[0] # assumes only 1 K with I } else{ $K .= '%' . $_ . ',' for @K_array; chop $K } $out =~ s|<p></p>|<p>$K</p>|; my $R = join '', @R_array; $out =~ s|<r></r>|<r>\n$R</r>|; $out .= qq(</t>\n</c>); if ( $I ){ $out =~ s|<t>|<t>\n<ifflag param="$I">\n<then>|; $out =~ s|</r>|</then>\n</ifflag>\n</r>|; } print "$out\n"; __DATA__ C 1010 K Perl K is K cool F 1234 S Alright R Whatever R More R BlaBla
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Help translating into HTML
by mrxg4 (Initiate) on Jul 18, 2004 at 03:01 UTC |