Frage

Ich versuche, einen Freund in einer College-Zuordnung zu helfen, aber ich vergaß Art eine Menge C eine Lex.

Die Sache ist, wir versuchen, ein HTML und ein Korrespondent CSS-Datei und fügen Sie zu einem Tag seinen Stil zu analysieren.

Beispiel:

HTML

<body>
</body>

CSS

body{color:black;}

modifizierte HTML

<body style="color:black;">
</body>

Alle regex sind fertig und die Makros zu.

Problem: Die Eingabe von HTML und modifizierte HTML Gotta die gleiche Datei sein. Wir haben versucht, umleiten beide yyin und yyout auf die gleiche Datei ... und dann die fputs verwenden (Text, yyout); wo Text ist ein char * mit allen Stilinformationen (und style = ""). Es funktioniert nicht.

So ... Könnt ihr ihm helfen?

seine Bedeutung nicht den Begriff des Standorts in der Datei (also den style = „“ rechts-Tag geht) zu verlieren.

Danke

War es hilfreich?

Lösung

umleiten yyin und yyout auf die gleiche Datei wird .. nicht (wie Sie bereits wissen). Mein Ansatz wäre:

  1. Erstellen Sie eine temporäre Datei
  2. yyout schreibt temporäre Datei
  3. beim Parsen ist Finish, Backup-Eingabedatei für die Sicherheit
  4. ersetzen Eingabedatei mit der temporären Datei

Es gibt keinen anderen Weg, wenn yyout das gleiche ist wie yyin Ihren (Original-Eingang) Text wird überlappte werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top