You need to colour the sentences after you split them into lines. It complicates the code a bit, but it's not that hard: just remember the positions where colours start, unpack the lines, and then compute what line and position the markup belongs to. Note that the positions are sorted in reverse, so that inserting the markup doesn't change the positions to process.

sub wrap { my ($lines, $pos, $markup) = @_; my $idx = int($pos / 50); substr $lines->[$idx], $pos % 50, 0, $markup; } my %dna; my $name1 = "name1"; my $name2 = "name2"; $dna{$name1} = "ATATTATCCCCCTATATATGGAGGGAGAGGGGGGGGGGGGGGGGGGGGGGGGGG +GAGAGAGGAGATTTTTTTTTTTTTTTT"; $dna{$name2} = "ATATATTATATATATTATATTCGCGCGCGCGGCGCGCGCGGCGCGCGCGTTTTT +TTTTTTTTTAGGAGAGAGAGGGAGGAGGAGAGGGGAGT"; my %class =(AGGAG => 'sd', TTTTT => 'terminator'); my $regex = join '|', keys %class; $regex = qr/((?i:$regex))/; my %highlight; for my $name (keys %dna) { while ($dna{$name} =~ /$regex/g) { $highlight{$name}{ pos($dna{$name}) - 5 } = $class{$1}; } } for my $key (keys %highlight) { print "<p> <b>$key</b><input type='radio' name='selected_intergeni +c' value='$dna{$key}'/> </p>"; my @lines = unpack '(A50)*', $dna{$key}; for my $pos (sort { $b <=> $a } keys %{ $highlight{$key} }) { my $class = $highlight{$key}{$pos}; wrap(\@lines, $pos + 5, '</span>'); wrap(\@lines, $pos, "<span class='$class'>"); } print join "<br />", @lines; }

($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,

In reply to Re: Print N characters per line in Cgi Script with Html Tags by choroba
in thread Print N characters per line in Cgi Script with Html Tags by Diesel

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.