Subject: Re: [xsl] Text based stage play scripts to XML From: Jacobus Reyneke <jacobusreyneke@xxxxxxxxx> Date: Mon, 24 Jan 2011 21:44:23 +0200 |
> #! /usr/bin/perl -w > use warnings; > use strict; > > sub element($$;%) > { > my ($name, $content, %attributes) = @_; > > sub quotedattvalue($$) > { > my ($name, $value) = @_; > > # print STDERR "q $name, $value\n"; > $value =~ s/"/\"/g; # so we can safely use quotes > return '"' . $value . '"'; > } > > # make a list of att="value" pairs, each with a leading space: > # (could use join and map to do this too more succinctly, > # see perldoc -f map) > my $atts = ""; > if (%attributes) { > foreach (keys %attributes) { > $atts .= " " . > $_ . '=' . quotedattvalue($_, $attributes{$_}) > ; > } > } > > return "<${name}${atts}>${content}</${name}>"; > } > > my $text; > { > local $/; > $text = <>; > }; > > $text =~ s{c d\K e f (?=g h)}{ > element( > "found-you", > $&, > "rule" => "31", > "before" => "c d" > ) > }gme; > print $text; > > # end Liam, you are a genius. The effort and passion you put into your response is commendable! Thanks a stack. I'm working it through. Since the nlptk (natural language processing toolkit) is written in Python, I assumed for some reason that Python was better suited for text processing in a modern world - but Perl seems quite readable, logical and practical. Thanks again for the effort! And friendly "hello world" in Perl. Kind regards, Jacobus
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Text based stage play scr, Liam R E Quin | Thread | [xsl] round-half-to-even problem., Szabo, Patrick \(LNG |
Re: [xsl] Re: XPath related query, Brandon Ibach | Date | AW: [xsl] round-half-to-even proble, Szabo, Patrick \(LNG |
Month |