[Cpan-forum-commit] rev 43 - trunk
svn at pti.co.il
svn at pti.co.il
Tue Jan 25 23:25:05 IST 2005
Author: gabor
Date: 2005-01-25 23:25:05 +0200 (Tue, 25 Jan 2005)
New Revision: 43
Modified:
trunk/parse.pl
Log:
cleaning the code a bit
Modified: trunk/parse.pl
===================================================================
--- trunk/parse.pl 2005-01-25 21:15:47 UTC (rev 42)
+++ trunk/parse.pl 2005-01-25 21:25:05 UTC (rev 43)
@@ -10,14 +10,14 @@
use Parse::RecDescent;
my $grammar = q {
- entry: chunk(s) eodata { $item[1] }
- chunk: text | code
- text: m{[\w ]+} { qq(<div class="text">$item[1]</div>); }
- code: opencode codetext closecode {$item[2] }
- opencode: m{<code>}
- codetext: m{[\t\n -~]+(?=</code>)} { qq(<div class="code">) . CGI::escapeHTML($item[1]) . qq(</div>); }
- closecode: m{</code>}
- eodata: m{^\Z}
+ entry : chunk(s) eodata { $item[1] }
+ chunk : text | code { $item[1] }
+ text : m{[\w ]+} { qq(<div class="text">$item[1]</div>); }
+ code : code_open code_text code_close {$item[2] }
+ code_open : m{<code>}
+ code_text : m{[\t\n -~]+(?=</code>)} { qq(<div class="code">) . CGI::escapeHTML($item[1]) . qq(</div>); }
+ code_close : m{</code>}
+ eodata : m{^\Z}
};
$Parse::RecDescent::skip = '';
@@ -40,13 +40,15 @@
my %data = (
'Hello world' => q(<div class="text">Hello world</div>),
' World' => q(<div class="text"> World</div>),
- '<code>' => undef,
- 'Hello<code>' => undef,
'<code>program</code>' => q(<div class="code">program</div>),
'apple<code><</code>' => q(<div class="text">apple</div><div class="code"><</div>),
'<code> $x < $y </code>' => q(<div class="code"> $x < $y </div>),
+ '<code><STD></code>' => q(<div class="code"><STD></div>),
+# '<b>bold</b> more text' => q(<div class="text"><b>bold</b> more text</div>),
+
+ '<code>' => undef,
+ 'Hello<code>' => undef,
'<code extra><STD></code>' => undef,
- '<code><STD></code>' => q(<div class="code"><STD></div>),
);
use Data::Dumper;
#print Dumper $parser->entry($text);
More information about the Cpan-forum-commit
mailing list