Gentoo Archives: gentoo-user-hu

From: Thomas Ferencz <drstrange@×××××××.hu>
To: gentoo-user-hu@l.g.o, zsolt.botykai@××××××.hu
Subject: Re: [gentoo-user-hu] python programozas regexp-pel
Date: Fri, 24 Sep 2004 07:42:13
Message-Id: 20040924074207.27604.qmail@web2.mailbox.hu
1 Idézet Botykai Zsolt &lt;zsolt.botykai@××××××.hu&gt; leveléből:
2
3 &gt; Sziasztok, az alábbi problémám van:
4 &gt; van egy csomó text file-om amiben hasznos szöveg van kb az
5 alábbi
6 &gt; eloszlásban:
7 &gt;
8 &gt; &lt;haszontalan szöveg&gt;
9 &gt; &lt;határoló&gt;
10 &gt; &lt;egy vagy fölös üres (maximum space-t vagy tab-ot tartalmaz
11 ó
12 sor)&gt;
13 &gt; &lt;hasznos szöveg&gt;
14 &gt; &lt;egy vagy fölös üres (maximum space-t vagy tab-ot tartalmaz
15 ó
16 sor)&gt;
17 &gt; &lt;hasznos szöveg&gt;
18 &gt; &lt;egy vagy fölös üres (maximum space-t vagy tab-ot tartalmaz
19 ó
20 sor)&gt;
21 &gt; &lt;hasznos szöveg&gt;
22 &gt; &lt;egy vagy fölös üres (maximum space-t vagy tab-ot tartalmaz
23 ó
24 sor)&gt;
25 &gt; &lt;határoló&gt;
26 &gt; &lt;haszontalan szöveg&gt;
27 &gt;
28 &gt; ezzel a scripttel &quot;gyönyörűen&quot; kinyerem a
29 &lt;határoló&gt;-k közötti
30 &gt; részt. csakhogy
31 &gt; ki szeretném vágni belőle a &lt;egy vagy fölös üres (maxim
32 um
33 space-t
34 &gt; vagy tab-ot
35 &gt; tartalmazó) sor&gt;-t is...
36 &gt; vmi ötlet?
37 &gt;
38 &gt; import sys
39 &gt; import re
40 &gt; data = sys.stdin.read()
41 &gt; match_body = re.compile(
42 &gt; r&quot;&quot;&quot;--==--.+--==--&quot;&quot;&quot;,
43 &gt; re.DOTALL |
44 &gt; re.MULTILINE |
45 &gt; re.VERBOSE)
46 &gt; f_body = match_body.search(data)
47 &gt; o_output = f_body.group() + &quot;\n&quot;
48 &gt; sys.stdout.write(o_output)
49 &gt;
50 &gt; Zsoltik@
51
52
53 Én lehet, hogy megnyitnám a filet (akarmi = file(fájlnév, 'r')),
54 aztán akarmi.readlines() metódust használva végigiterálnám a f
55 ájl
56 sorait és úgy szűrném ki a haszontalan sorokat. Lehet persze, hogy
57 van sokkal elegánsabb megoldás is.
58
59 dr_strange