[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Problem mit sed/perl/regex



Hallo Martin,

On Thu, Jul 05, 2007 at 07:30:21PM +0200, Martin Grandrath wrote:
> ---- Eingabe ----
> Some text
>   * Listenpunkt 1
>   * Listenpunkt 2
>   * etc.
> 
> ---- /Eingabe ----
> 
> ---- Ausgabe ----
> Some text
> \begin{itemize}
> \item Listenpunkt 1
> \item Listenpunkt 2
> \item etc.
> \end{itemize}
> 
> ---- /Ausgabe ----

Vielleicht dient der folgende Schnipsel als Anregung:

---8<---
#! /usr/bin/perl

open(IN,"<in_file") or die $!;

my $list = 0;

while(<IN>) {
	if(s/(^\s+\* )(.*)/\\item $2/) {
		$list || print "\\begin{itemize}\n";
		$list ||= 1;
		print;
	} elsif ($list && /^$/) {
		print "\\end{itemize}\n\n";
		$list = 0;
	} else { print }
}

close(IN) or die $!;
--->8---

Musst halt 'in_file' entsprechend ändern; die regulären Ausdrücke sind
sicher auch ausbaufähig, je nachdem, wie dein Input tatsächlich
aussieht.

Gruß,

f

-- 
Gravity is a myth, the Earth sucks.



Reply to: