|< 1 2 >| | 13 Einträge, 2 Seiten |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#! /usr/bin/perl -w
use strict;
open (MAIL, "text.txt")
or die "Die Datei kann nicht geoeffnet werden: $!";
open (FILE, "aufgabe.txt")
or die "Die Datei kann nicht geoeffnet werden: $!";
my $line1 = <MAIL>;
while (defined($line1)) {
$_ = $line1;
s/[\w]*\n Aufgabe /Aufgbe/g;
print FILE $_;
$line1 = <MAIL>;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#! /usr/bin/perl
use strict;
use warnings;
use diagnostics;
my $infile = 'text.txt';
my $outfile = 'aufgaben.txt';
my $b_aufgabe = 0;
my $i = 0;
my @aufgaben = ();
open(R_FILE,"<$infile") or die $!;
my @lines = <R_FILE>;
close R_FILE;
foreach my $line(@lines){
$b_aufgabe = 1 if($line =~ /^Aufgabe/);
next unless($b_aufgabe);
$aufgaben[$i] .= $line;
if($line =~ /^Seite/){
$b_aufgabe = 0;
$i++;
}
}
open(W_AUFGABE,">$outfile") or die $!;
print W_AUFGABE $_,"\n" for(@aufgaben);
close W_AUFGABE;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#! /usr/bin/perl -w
use strict;
open (MAIL, "<text.txt")
or die "Die Datei kann nicht geoeffnet werden: $!";
open (FILE, ">aufgabe.txt")
or die "Die Datei kann nicht geoeffnet werden: $!";
my $bold = 0;
while (my $line = <MAIL>) {
if ( $line =~ /^Aufgabe/ ) {
$bold = 1;
}
print FILE $line if $bold;
if ( $line =~ /^Seite/ ) {
$bold = 0;
print "\n";
}
}
s/(S\.\s\d+(\s\-\d+)?)/<Seite>$1<\/Seite>/g;
1
2
3
4
5
6
7
8
9
10
11
12
13
my $bold = 0;
while (my $line = <MAIL>) {
if ( $line =~ /^Aufgabe/ ) {
$bold = 1;
}
print FILE $line if $bold;
if ( $line =~ /^Seite/ ) {
$bold = 0;
print "\n";
}
}
1
2
3
4
5
if ( $bold ) {
$line =~ s/(S\.\s\d+(\s\-\d+)?)/<Seite>$1<\/Seite>/g;
#noch ein paar sachen mehr
print FILE $line;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# komplette Datei in $data einlesen
my($data);
open(MAIL, '<', 'text.txt') or die $!;
{
undef($/);
$data = <MAIL>
}
close(MAIL);
open(FILE, '>', 'aufgabe.txt') or die $!;
while($data =~ m {
.*? Aufgabe \s+ (\d+) \s+ von \s+ (\d+) .*? \n+
(?: Bewertung: \s+ (\d) \s+ Punkte)? .*? \n+
.*? Thema: (.+?) \n+
.*? Beschreibung: ((?:.|\n)+?)
Buch: \s+ (.+?), \s+ Seite \s+ (\d+) - (\d+)
}gxs){
printf(FILE<<"END", $1, $2, $3, $4, $5, $6, $7, $8);
<Aufgabe> %d von %d </Aufgabe>
<Bewertung> %s Punkte </Bewertung>
<Thema> %s </Thema>
<Beschreibung> %s </Beschreibung>
<Buch> %s </Buch>
<Seite> %d-%d </Seite>
END
}
close(FILE);
|< 1 2 >| | 13 Einträge, 2 Seiten |