Important: read the health warning below.

Does a # in the data indicate a comment? If it does the code below skips lines begining with a #. If I have not understood you correctly, please give an example of the data.
The code also adds a comma to each 'inline' style.
I've added a variable to help make the code clearer.

Health warning
There is more than one way to do this! This is how I do it and it is heavily influenced by the fact that my main experience in coding is vb which makes most people around here shudder! For example, in Programing Perl, a long list of elsifs is frowned on. I tell myself that as I'm using the less well known 'baby idiom' (to be polite) it is ok. Until, at least, I learn a better way.
Also my main motive for helping is to hone my own skills (which badly need honing).

while (my $line_in = <DATA>) { chomp($line_in); next if $line_in =~ /^#/; # skip comments my ( $style, $content ) = $line_in =~ /^(\w)\s+(.*)$/; my $block = $tag->{ $style }->{ block }; $line_out = join( '', $tag->{ $style }->{ open }, $content, $tag->{ $style }->{ close } ); if ( $block and ! $block_flag ){ $output = join( '', $output, $tag->{ $style }->{ block_open }, $line_out, ',' ); $block_flag = $style; } elsif ( ! $block and $block_flag ){ chop $output; # remove final comma $output = join( '', $output, $tag->{ $block_flag }->{ block_close }, "\n", $line_out, "\n" ); $block_flag = ''; } elsif ( $block ){ $output = join( '', $output, $line_out, ',' ); } else{ $output = join( '', $output, $line_out, "\n" ); } $line_out = ''; } # data with comments __DATA__ R Whatever # First comment R Another whatever K Perl K Monks # Second comment K Is K Cool T Another style R Whatever

In reply to Re^5: Formatting by wfsp
in thread Formatting by mrxg4

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.