Leerzeichen löschen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Leerzeichen löschen

    Hallo zusammen

    Ich möchte für ein Browsergame eine private (bzw. allyinterne) Galaxieverwaltung programmieren, das funktioniert auch soweit ohne Probleme.
    Die Datenbank mit den Tabellen für jedes Sonnensystem steht und die php Datei zum anzeigen der Sonnensystem funktioniert soweit auch.

    Allerdings habe ich so meine Probleme mit der Datei mit der man Sonnensysteme updaten kann indem man das Sonnensystem einfach in ein Formular (textarea) kopiert und abschickt.

    Geplant ist das ganze so, man ruft die Datei update.php auf und bekommt ein textfeld wo man das Sonnensystem aus dem Browsergame kopiert und einfügt und dannach absendet. Innerhalb des Programms sollten dann (so hätt ichs gern) alle leerzeichen entfernt und durch / ersetzt um es dannach (mit explode) in ein Feld umzuwandeln.
    Da stellt sich allerdings auch schon mein Problem herraus, den beim kopieren sind tabstops und mehrere leerzeichen vorhanden, ich möchte das dann zwischendurch nur ein / vorhanden ist und nicht ////.
    Wie kann ich daher mehrere hintereinander folgende Leerzeichen zu einem / umwandeln?



    Die Galaxieansicht sieht wie folgt aus damit ihr euch was darunter vorstellen könnt:
    Code:
      <   Sonnensystem X:YYY   >   	
    Planet	Planetenname	Spielername	Allianz	Aktion	
    1	Quadrino	Captain_Tuvok *	DU	goto / ziel / 	
    2	Telaria	Captain_Tuvok *	DU	goto / ziel / 	
    3	Huntalia	Captain_Tuvok *	DU	goto / ziel / 	
    4	abreissen	Captain_Tuvok *	DU	goto / ziel / 	
    5	Potula	Captain_Tuvok *	DU	goto / ziel / 	
    6	Magnus	Captain_Tuvok *	DU	goto / ziel / 	
    7	Kolonie	Battlemaster ii 130.977 u 	CvNBC	spio / ziel / 	
    8	Telewan	Captain_Tuvok *	DU	goto / ziel / 	
    9	Ottakring	Flecki u 	SEK	spio / ziel / 	
    10	Melmac	sukram 	DU²	handeln / 	
    11	Eristoff	sukram 	DU²	handeln / 	
    12	WaterWorld	Horatio 	DU²	handeln / 	
    13	Alcatraz	Horatio 	DU²	handeln / 	
    14	Nash	Horatio 	DU²	handeln / 	
    15	Zorin	Horatio 	DU²	handeln /

    Ich bin für jede Hilfe die mir irgendwie weiterhilft dankbar

  • #2
    hmm ... ein ansatz wäre ...
    - schau dir an, was preg_split() kann

    als würgaround:
    - ersetze alle tabs durch 2 leerzeichen
    - explode()iere zeilenweise auf 2 leerzeichen
    - durchlaufe das array und prüfe ge trim() mte inhalte auf leer oder nicht
    - fülle ein neues array mit vollen/vorhandenen inhalten
    - implode() iere es
    Kissolino.com

    Kommentar


    • #3
      Danke, das hat mir schon weitergeholfen

      Hab das ganze jetzt mal so gelöst:
      PHP-Code:
      $update preg_split('/\s+/',$update); 
      Hab das ganze auch schon mit preg_replace gemacht was ja eigentlich das gleiche bewirkt nur das kein Feld erzeugt wird.
      Ich werd mir die Funktionen Zeichenketten betreffend trotzdem nochmal genauer ansehen da ich glaube da noch nicht alles ganz verstanden zu haben... *nach guter webseite mit erklärung such weil php.net nicht ganz check*

      Nachdem ich dann auch alles entfernt habe was ich sonst noch so weghaben will sieht das ganze dann so aus, wo sich noch ein letztes kleines Problem ergibt.

      1:224/1/Quadrino/Captain_Tuvok/DU/2/Telaria/Captain_Tuvok/DU/3/Huntalia/Captain_Tuvok/DU/4/abreissen/Captain_Tuvok/DU/5/Potula/Captain_Tuvok/DU/6/Magnus/Captain_Tuvok/DU/7/Kolonie/Battlemaster/ii/130.977/u/CvNBC/8/Telewan/Captain_Tuvok/DU/9/Ottakring/Flecki/u/SEK/10/Melmac/sukram/DU²/11/Eristoff/sukram/DU²/12/WaterWorld/Horatio/DU²/13/Alcatraz/Horatio/DU²/14/Nash/Horatio/DU²/15/Zorin/Horatio/DU²/
      Und zwar werden (sieht man weiter oben noch besser) inaktivitätsanzeigen hinter dem Benutzernamen angezeigt (in dem Fall hinter Battlemaster wobei die Zahlen hinter dem ii verschieden sind), diese würd ich noch gerne wenn das geht entfernen so das die gesamte Felderanzahl immer gleichbleibend ist. Da fällt mir so nämlich nicht wirklich was ein.
      Das ii könnte man noch per preg_replace entfernen aber die Zahl ist immer verschieden, und u wäre wohl nicht empfehlenswert da sonst von den Namen auch das u entfernt wird (kann bei ii auch sein aber so einen Namen gibts wohl selten).

      Kommentar

      Lädt...
      X