AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch HTML interne Links nachträglich setzen?

HTML interne Links nachträglich setzen?

Ein Thema von Monday · begonnen am 23. Jun 2019 · letzter Beitrag vom 23. Jun 2019
Antwort Antwort
Monday

Registriert seit: 24. Aug 2012
70 Beiträge
 
FreePascal / Lazarus
 
#1

HTML interne Links nachträglich setzen?

  Alt 23. Jun 2019, 09:05
Hallo


Ich habe einen langen MS Word Text mit Mathe Übungsaufgaben (als Grafik eingefügt) geschrieben. Nach den ganzen Aufgaben, kann man die Lösungen ansehen. Jede Aufgabe ist durchlaufend Nummeriert. Dann habe ich das ganze als HTML Datei gespeichert.

Danach viel mir ein, es wäre schön, wenn man bei jeder Aufgabe ein Link zur Lösung hat und von der Lösung wieder zur Aufgabe. Das habe ich aber nicht gemacht. Und habe 200 Aufgaben geschrieben.
Gibt es nun eine Möglichkeit nachträglich diese Links ("Anker") einzufügen? Ohne das händisch machen zu müssen?

Meine Idee ist, über ein "Suchen und Ersetzen" Tool (vielleicht geht sogar MS Word?) oder gar über einen regulären Ausdruck die HTML Datei zu bearbeiten (falls es soetwas noch nicht gibt, würde ich ein Mini Programm schreiben um den regulären Ausdruck darüber laufen zu lassen).


Alle Übungsaufgaben beginnen mit "Nr. X " (Mit Leerzeichen zwischen Punkt und Zahl).
Die Lösungen beginnen mit "Nr.X " (Ohne Leerzeichen zwischen Punkt und Zahl).
Beides ist nur als "Fett" Formatiert.

Zum "Finden" (und Ersetzen) ist das wunderbar. Die Schwierigkeit finde ich bei den Zahlen. Wie bekommt man die Übungsaufgaben Nummer mit der Lösungsaufgaben Nummer zusammenhängend?


Jemand eine Idee?

Liebe Grüße
Monday


Noch eine Ergänzung:
Ich habe Word 365.
In Word sind wohl "Textmarke" und "Link" die richtigen Punkte unter dem Menü "Einfügen". Aber wie ich das durch Suchen und Ersetzen benutzen kann habe ich noch nicht herausgefunden.

Geändert von Monday (23. Jun 2019 um 09:59 Uhr)
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
471 Beiträge
 
Delphi 2009 Professional
 
#2

AW: HTML interne Links nachträglich setzen?

  Alt 23. Jun 2019, 11:41
Na ja, in HTML gibt es Anker.
Code:
<a href="#bla">Start</a>
<irgendwas id="bla">Ziel</irgendwas>
Warum man Mathekram in Word als Bild einfügt (oder nicht gleich LaTeX nimmt, da wäre das Rumgespringe auch schnell getan), bleibt mir wohl ein Rätsel...
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Monday

Registriert seit: 24. Aug 2012
70 Beiträge
 
FreePascal / Lazarus
 
#3

AW: HTML interne Links nachträglich setzen?

  Alt 23. Jun 2019, 11:46
Ich denke, ich habe einen Ansatz gefunden:

Wer noch an der Aufgabe etwas knobbeln möchte, nicht weiterlesen Auf jedenfall gut um die Office und RegEx Kenntnisse aufzufrischen.











Ich habe die Word Datei als HTML gespeichert.
Den Rest habe ich über https://regex101.com/ ersetzt.
Zuerst die Textmarken / Anker setzen: Suche: "Nr.([0-9]*)( ?)<" Ersetzen: "<a name="\1">Nr.\1</p>\2<"
Resultat wieder als Suchtext verwenden.
Dann den Verweiß / die Links setzen: Suche: ">. ([0-9]+) <" Ersetzen: ". $1 <a href="#$1">Lösung</a>$2"
Text wieder als HTML abspeichern (bzw. den von Word abgespeicherten HTML Text ersetzen).

Dann sollte in HTML der Text funktionieren mit den Links. Und sogar in Word wieder aufrufbar als Word Dokument speicherbar. Zumindest sehen die ersten Testergebnisse schonmal brauchbar aus.


Was mir sonst noch wichtig scheint:
- Der Word HTML Code enthält ziemlich viel Code. Das ist bei der RegEx ziemlich Tricky wenn man nicht dran denkt. Am besten den produzierten Code genau anschauen.
- Word bietet wohl bei der "Suchen und Ersetzen" einige Sonderfälle und Formatierungen an wie Zeilenumbrüche u.ä. Aber für oben genannten Fall habe ich nichts gefunden.
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
471 Beiträge
 
Delphi 2009 Professional
 
#4

AW: HTML interne Links nachträglich setzen?

  Alt 23. Jun 2019, 12:03
Wenn man mit Office HTML erzeugt, ist das nie schön und wegen der ganzen proprietären Attribute (was der IE5 eben HTML4 nannte) und dem Zwang, möglichst pixelgenau wie in Word auszusehen, nie auch nur ansatzweise im Quelltext lesbar. Viele Sachen aus Word werden beispielsweise als Bild ausgegeben, weil sie mit HTML selbst nur unter Einsatz erheblicher Mengen CSS pixelgenau zu machen sind. Es gab mal einen Versuch von Microsoft, Office Frontpage in sauber und dem Namen Expression Web anzubieten, das hat sich aber inzwischen wieder erledigt. Wenn man kann, sollte man HTML und z.B. auch SVG von Hand erstellen.

Mathematischen Formelsatz im Web macht man mit MathML. Die Sprache ist scheußlich und unmöglich von Hand zu erstellen, daher gibt es die Website asciimath.org (Formel eingeben und Rechtsklick auf den rechten Kasten machen). Die Syntax von AsciiMath ist genau die, die Mathematiker auch sonst ohne Sonderzeichen nutzen.
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf