Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]12298[/thread]

Starthilfe gesucht



<< >> 6 Einträge, 1 Seite
protag
 2008-08-05 16:35
#113110 #113110
User since
2008-02-21
28 Artikel
BenutzerIn
[default_avatar]
Hallo,

ich brauche eine kleine Starthilfe um mein Problem lösen zu können.

Ich muß eine große Anzahl SGML-Files bearbeiten es müssen bestimmte Tags ersetzt bzw ergänzt werden. So muss zB
Code: (dl )
<xref xrefid="f002" xidtype="figure">
ein schliessendes tag
Code: (dl )
</xref>
erhalten.

Das mit denm Ersetzen hab ich mit regulären ausdrücken lösen können nicht aber das Ergänzen.

Kann ich das mit HTML TagReader machen ?
Hat vielleicht jemand ein Beispiel wie man damit arbeitet, ich finde die Doku nicht besonders gut (für einen Amateur wie mich).

Vielen Dank im Vorraus.
GwenDragon
 2008-08-05 17:20
#113113 #113113
User since
2005-01-17
14747 Artikel
Admin1
[Homepage]
user image
Hast du doch schon mal unter CPAN:SGML umgeschaut?
protag
 2008-08-05 17:32
#113115 #113115
User since
2008-02-21
28 Artikel
BenutzerIn
[default_avatar]
Ja, das habe ich, auf diesem Wege bin ich ja auf den TagReader gestossen.

Die SGML-Module scheinen alle zu kompliziert zu sein und ich bei der Vielzahl der Möglichkeiten bin ich ja eben auf der Suche nach nem Tip wie oder womit ich anfangen soll, um nicht alles mögliche ausprobieren zu müssen.

Eigentlich ist es ganz einfach, wenn Tag = <xref bla bla> dann ergänze </xref>.

Wär schön wenn jemand ne Idee hat.
protag
 2008-08-06 10:37
#113140 #113140
User since
2008-02-21
28 Artikel
BenutzerIn
[default_avatar]
Habs mit dem TagReader Modul hingekriegt, hatte gestern wohl ein Brett vorm Kopf.
GwenDragon
 2008-08-06 16:26
#113156 #113156
User since
2005-01-17
14747 Artikel
Admin1
[Homepage]
user image
Verrätst du uns die Lösung?
Andere, die danach suchen, würden sich bestimmt freuen.
protag
 2008-08-07 16:40
#113189 #113189
User since
2008-02-21
28 Artikel
BenutzerIn
[default_avatar]
Ja klar, mach ich gern. Ist schon fast peinlich, denn eigentlich stand es ja doch in der Doku. Ich brauchte nur ein paar Zeilen eigenen Code einfügen.

Hier der entscheidende Schnippsel, der Rest ergibt sich wie gesagt aus der Doku zum Modul.


Code: (dl )
1
2
3
4
5
6
7
8
9
10
use TagReader;
$xende ="</xref>";
my $p=new TagReader "testfile.sgm";
my @tag;
while(@tag = $p->getbytoken(1)){
if ($tag[0]=~/xref/i)
{
my $mod_xtag = $tag[0].$xende;
print $mod_xtag;
} }
<< >> 6 Einträge, 1 Seite



View all threads created 2008-08-05 16:35.