Thread [HTML::Parser] Überschriften parsen und als Liste darstellen - nur wie?
(6 answers)
Opened by GwenDragon at 2023-12-20 16:08
Hallo, ich habe es mit regex gelöst. Vielleicht hilft es.
Code (perl): (dl
)
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 32 33 34 35 36 37 38 39 40 #!/usr/bin/perl -w use strict; my @result; my $content = do { local $/ = undef; <DATA> }; $content =~ s/<\/h(\d)>/<\/h$1>\n/gi; while ($content =~ /<h(\d)>(.*)<\/h\d>/gmi) { push( @result, "Level: ".$1.": ".$2); } foreach(@result){ print $_."\n"; } __DATA__ {{{%%TOC%%}}} <h1>Test 1</H1> <p>Test</p> <h2>Test 2</H2> <p>Test 123</p> <h2>Test 3</H2> <p>Test</p> <h1>Test 4</H1> <p>Test</p> <h3>Test 5</H3> <h4>Test 6</H4> <h1>Test 7</H1> <p>Test</p> Ergebnis: Code: (dl
)
1 Level: 1: Test 1 |