Aktuelle Zeit: 01.12.2020 16:45

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: String Parser
BeitragVerfasst: 13.05.2006 07:09 
Offline
Benutzeravatar

Registriert: 30.03.2005 02:20
Dieses Tool ist aus der Not entstanden dass ich einfach keinen Bock mehr hatte stupide stummfsinnige PB Code bisschen umwandeln um woanders verwenden zu koeenne hatte. Nunja Hier ist mal ein Bsp was ich meine:

Folgendes muss mit PB in eine Datei geschrieben werden:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Meine Bilder</title>
</head>

<body>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
function Bildfenster(fensterbreite,fensterhoehe,url,target,bild,bildtext) {
var fenster, bildschirmbreite, bildschirmhoehe, fenstereigenschaft;
bildschirmbreite=screen.width;
bildschirmhoehe=screen.height;
// Du kannst natürlich left und top auch fest definieren
fenstereigenschaft="left="+(bildschirmbreite-fensterbreite)/2+" "+", top="+(bildschirmhoehe-fensterhoehe)/2+ ", height="+fensterhoehe + ", width="+fensterbreite;
fenster=window.open(url,target,fenstereigenschaft);
fenster.focus();
fenster.document.open();
with (fenster) {
document.write('<html><head><title>?</title></head>');
document.write('<body onblur="window.close()" leftmargin="0" topmargin="0">');
document.write('<img src="'+ bild +'"border="0"><br>'+bildtext);
document.write('</body></html>');
fenster.document.close();
}
}
//-->
</SCRIPT>


Nunja ich muesste dass jetzt alles durchgehen und ueberall " durch chr(34) ersetzen usw viel arbeit und stumpfsinnig. Daher folgendes Tool:

http://sceneproject.org/~konne/String poarser.zip

Man kann diese umwandlung mit ein paar einfachen Commands in unter 30 sec in die richtige Form bringen.

Zur Handhabung:
Im Ersten tab wird via Strg+V der zu transformierende text eigenfuegt.
Dann Geht man zu "Skript" und hier faengt der spass an. Es steht einem eine grosses befehlsset der PB Stringlkib zur verfuegung.

Das System ist folgendes:
Die Inoutliste wird Zeile fuer Zeile durchgegangen. Dabei wird das Script immer auf jede Zeile angewendet. Es wird aus der Dropdownliste ein Befehl ausgewaehlt. Nun kann man die Parameter angeben fuer den befehl. Mit "+" kann man den Befehl zur Liste hinzufuegen, mit Update (Rundes blaues ding) wird das ausgewaehlte element ueberschrieben mit den Pfeilen kann man die Elemente rumbewegen und mit "GO" kann man das Script rendern und es wird nach Output ausgegeben. Delte loescht das ausgewaehlte icon. Mit Save kann man das Skript speichern mit load kann man ein altes Laden.

Die Befehle funktionieren folgendermassen.
Die meisten befehle (zwischen der 1 und 2 Trennlinie nehmen alle den 'Output' und schreiben ihre Transformation wieder in den Output. Mit WriteOutput kann der 'Output' ausgegeben werden, mit 'Root in Output' wird der InputBlock ins Output geladen. (Am anfang wird standartmaesig der InputBlock ins Output geladen). Die Befehle vor der 1 trennlinie schreiben ihre parameter sofort in die Ausgabedatei und veraendern den Output NICHT (Unter ausnahme von 'Root in Output' )
If vergleicht den Output mit dem parameter und entscheidet daraufhin ob zu esle gesprungen werden soll oda nicht.

Nunja mal ein Bsp:
Um den Oberen Code in eine Form
Code:
HTML.s+"LINIE"

zu bringen und " zu ersetzen machen wir folgendes Script:

(-> Parameter)

Code:
WriteString -> HTML.s+"
ReplaceString -> " -> "+Chr(34)+"
WriteOutput
WriteString -> "
WriteBreak


Fertig

Bei fragen rueckmeldungen usw, alles ist herzlich willkommen.

_________________
http://www.komani.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 13.05.2006 20:44 
Offline

Registriert: 04.02.2005 19:57
Der link ist schrott konne, hier ist der richtige inklusive rechtschreibfehlerkorrektur:

http://sceneproject.org/~konne/String-Parser.zip

Außerdem tut er glaub net immer was er soll,
Code:
Write String
!



IfOutput
!
Test5

= (Equal)
Write Output
(FUENF)
Test5

= (Equal)
Write String
(FUENF)
Test5

= (Equal)
Write Output
(FUENF)
Test5

= (Equal)
Write Break
(FUENF)
Test5

= (Equal)
Else
(FUENF)
Test5

= (Equal)
Write Output
(FUENF)
Test5

= (Equal)




Sollte doch aus
Code:
Test1
Test2
Test5
Test3
Test4

folgendes machen:
Code:
!Test1
!Test2
!Test5(FUENF)
!Test3
!Test4


es macht aber folgendes draus:
Code:
!Test1!Test2!Test5(FUENF)Test5
!Test3!Test4

_________________
www.KoMaNi.de
Eine kleine Gruppe von Hobby Programmierern, die gerade einen Instant Messenger natürlich in PureBasic schreiben.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 14.05.2006 02:00 
Offline
Benutzeravatar

Registriert: 30.03.2005 02:20
lol ich bin echt ausm deutsch drausen. Nunja danke. Kann sein dass es bugs hat hab ich in einem tag geschrieben um MobyDick in ein anderes Format umzuschreiben um es als meines augeben zu koennen. :)

Dein Code wuerde funktionieren wenn du 'Write Break' am ende einfuegst!
Das BREAK wird fuer mehr moeglichkeiten nicht automatrisch reingehauen. Zudem ist dir vielleicht nicht klar das WriteString nicht in den Output sondern direkt ins File schreibet. Means folgender Code macht genau was du willst:

Code:
Write String
!



Write Output
(FUENF)
Test5

= (Equal)
IfOutput
!
Test5

= (Equal)
Write String
(FUENF)
Test5

= (Equal)
Endif
(FUENF)
Test5

= (Equal)
Write Break
(FUENF)
Test5

= (Equal)


_________________
http://www.komani.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 15.05.2006 10:25 
Offline

Registriert: 10.11.2004 03:22
Konne hat geschrieben:
... um MobyDick in ein anderes Format umzuschreiben um es als meines augeben zu koennen. :)


shame on you, pal. cheater!

_________________
... machts gut und danke für den fisch ...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 17.05.2006 21:20 
Offline
Benutzeravatar

Registriert: 30.03.2005 02:20
Ich hab nicht die Zeit Buecher zu lesen! Ich nenne das 'Nutzung von vorhandenen Resourcen!'. Das iNet ist nunmal fuer sowas sehr gut geeignet!

_________________
http://www.komani.de


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: Derren und 6 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye