[vienna.pm] Text Formatierungen / Sonderzeichen

Johannes Fuernkranz juffi at ai.univie.ac.at
Fri May 26 09:33:29 CDT 2000


* * * vienna-pm-list * * *


Markus Baumeister wrote:
> 
> * * * vienna-pm-list * * *
> 
> Hallo Liste!!!
> 
> Ein(ig)e Frage(n):
> 
> Frage 1:
> Ich lass mir durch eine Webform Daten in ein File Schreiben.
> Im File sieht das ganze dann so aus:
> 
> name=XYZ ungeloest
> ort=nirgendwo
> e-mail=kaner kennts
> time=DatumUhrzeit
> =
> name=XYZ ungeloest
> ort=nirgendwo
> e-mail=kaner kennts
> time=DatumUhrzeit
> =
> 
> Nun haette ich gerne ein anderes Format in diesem File naemlich:
> 
> name=XYZ ungeloest; ort=nirgendwo, e-mail=kaner kennts, time=DatumUhrzeit;
> name=XYZ ungeloest; ort=nirgendwo, e-mail=kaner kennts, time=DatumUhrzeit;
> name=XYZ ungeloest; ort=nirgendwo, e-mail=kaner kennts, time=DatumUhrzeit;
> 
> Hat irgendjemand schon mal soetwas gemacht bzw. kennt eine Doku dazu oder kann mir gar ein
> paar Beispiele darstellen??

In etwa (ohne Anspruch auf Lauffähigkeit):

my ($name,$ort,$email,$time);

while (<>) {  # lies zeilenweise
   chomp;   # das \n am Ende der Zeile wegschmeissen
   if (/^name/) { # steht name am Anfang?
      $name = $_;
   }
   elsif (/^ort/) { # steht Ort am Anfagn?
      $ort = $_;
   }
   elsif ....   # analog fuer andere Eintraege
   elsif (/^=/) {
      # alle Eintraege gelesen, nun ausgeben 
      print "$name; $ort, $email, $time;\n";
      # variablen wieder loeschen, auf zum naechsten entry.
      undef ($name, $ort, $email, $time);
   }
}

Of course, there's more than one way, and your mileage may vary...

Wenn's nicht geht, Camel-Buch kaufen (wahrscheinlich auch lesen).
 
> Noch eine Frage:
> Gibt es eine Moglichkeit Sonderzeichen sofort in oben genanntes File schreiben zu lassen
> derzeit sieht es so aus:
> 
> name=N%E4hmaschine%20Waschmaschine
> ort=Drabsdr%FCh
> e-mail=kaner%40kennts.com
> time=Fri%20May%2026%2012%3A03%3A45%202000
> 
> Ich ersetze die sonderzeichen derzeit mit folgenden shellscript
> #/bin/sh
> perl -pi -e 's/%E4/\ä/g' e-file
> perl -pi -e 's/%F6/\ö/g' e-file
> perl -pi -e 's/%FC/\ü/g' e-file
> usw. usw.
> 
> Irgendwie denk ich gibts da sicher eine bessere Lösung oder ?

use CGI;
insbesondere alle Funktionen mit /(.*)escape(.*)/.
http://www.cpan.org/doc/manual/html/lib/CGI.html

					Juffi
###
You are subscribed to vienna-pm-list as Johannes Fuernkranz <juffi at ai.univie.ac.at>
http://www.fff.at/fff/vienna.pm/



More information about the Vienna-pm mailing list