phpbuddy.eu
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 16.03.2004, 16:24   #1
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg

Nullen durch Leerzeichen ersetzen


Hey,

ich brauch mal ganz dringend eure Hilfe! Ich lese eine Textdatei zeilenweise aus! Ich muss immer einen Teil der Zeile extrahieren und verändern!

Ab Zeichen 36 nehme ich einen 12 Zeichen langen String hinaus, dieser String beginnt mit einigen Nullen die ich durch Leerzeichen ersetzen muss. Ich muss alle Nullen ersetzten bis die erste andere Ziffer kommt (eventuell darauf folgende Nullen müssen verschont bleiben)! Wäre bis hier eigentlich kein Problem, aber da es pro Zeile verschieden viele Nullen sind mit denen der String anfängt hab ich ein Problem!

Sprich ich habe z.B. folgende extrahierte Strings:

000189002100
000058970020

Der erste String beginnt mit drei Nullen, welche ich durch Leerzeichen ersetzen muss, der zweite mit vier Nullen welche ersetzt gehören!

Könnt ihr mir helfen, ich stehr irgendwie an!

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten


Alt 16.03.2004, 16:35   #2
TP-Special Mod
 
Benutzerbild von webmichl
 
Registriert seit: Jun 2001
Ort: 8°21' O 49°1' N
webmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine User
preg_replace(/^0+/, ' ' )
webmichl ist gerade online   Mit Zitat antworten
Alt 16.03.2004, 16:46   #3
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Hey,

danke für den Tipp! Funktioniert fast perfekt! Das Problem ist das ich pro 0 ein Leerzeichen brauch, jetzt bekomm ich für alle ein einziges!

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten
Alt 16.03.2004, 16:56   #4
TP-Special Mod
 
Benutzerbild von webmichl
 
Registriert seit: Jun 2001
Ort: 8°21' O 49°1' N
webmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine User
ups...


preg_replace(/^0+/g, ' ' )

müsste eigentlich funktionieren...
webmichl ist gerade online   Mit Zitat antworten
Alt 16.03.2004, 17:00   #5
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Nein, leider nicht!

Fehlermeldung:

Unknown modifier 'g' in ...
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten
Alt 16.03.2004, 17:17   #6
TP-Specialist
 
Benutzerbild von mike
 
Registriert seit: Jan 2002
Ort: TP/Dynamik
mike bringt sich richtig ein
es muss nicht immer regex sein:

str_replace("0"," ",$zahl);
__________________
Gehelft? Hier kannst du dich bedanken.

mike
mike ist offline   Mit Zitat antworten
Alt 16.03.2004, 17:21   #7
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Dann werden mir aber auch die Nullen geändert die nachher stehen! Ich brauch nur die führenden Nullen, alles nach der ersten anderen Ziffer ist egal!


sprich aus

0000125801450

sollte dann

....125801450 (die Punkte stehen hier für Leerzeichen)

werden.

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten
Alt 16.03.2004, 18:02   #8
TP-Specialist
 
Benutzerbild von mike
 
Registriert seit: Jan 2002
Ort: TP/Dynamik
mike bringt sich richtig ein
wegen sinnlosigkeit zurückgezogen...

__________________
Gehelft? Hier kannst du dich bedanken.

mike
mike ist offline   Mit Zitat antworten
Alt 16.03.2004, 18:50   #9
spl
TP-Insider
 
Benutzerbild von spl
 
Registriert seit: Sep 2003
Ort: Sankt Augustin
spl macht alles soweit korrekt
PHP-Code:
$zahl="00000000000012200";
$anzahl=0;

for (
$i 0$j strlen($zahl); $i $j$i++) {
   if (
strstr('0'$zahl[i$]) { $anzahl++ }
   else { break;}
}

$austauschnull=''$austauschleer='';

for (
$i 0$i $anzahl$i++) {
   
$austauchnull.="0";
   
$austauschleer.=" ";
}

$neuezahl=str_replace($austauschnull,$austauschleer,$zahl); 
Das sollte gehen, wenn auch ungetestet. Ich würde das noch in eine Funktion stecken. Ist doch einfacher

$zahl=wegmitnull($zahl);

auszurufen
__________________
Gruß Sebastian

Webdesign und viel mehr http://lauff.info

yingiz, deine Wirtschaftsgemeinschaft im Netz - gemeinsam bis zu 60% vom Verkaufspreis oder bis zu 300 € Provisionen verdienen. Jeder profitiert von Jedem! Gemeinsam stark! Jetzt anmelden
spl ist offline   Mit Zitat antworten
Alt 16.03.2004, 18:59   #10
TP-Special Mod
 
Benutzerbild von webmichl
 
Registriert seit: Jun 2001
Ort: 8°21' O 49°1' N
webmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine User
Auch ned schlecht - die preg_replace-Lösung wird nämlich kniffeliger, als ich dachte.... aber ich sitz dran
webmichl ist gerade online   Mit Zitat antworten
Alt 16.03.2004, 19:35   #11
spl
TP-Insider
 
Benutzerbild von spl
 
Registriert seit: Sep 2003
Ort: Sankt Augustin
spl macht alles soweit korrekt
danke bin aber gespannt was man mit regexp noch machen kann
__________________
Gruß Sebastian

Webdesign und viel mehr http://lauff.info

yingiz, deine Wirtschaftsgemeinschaft im Netz - gemeinsam bis zu 60% vom Verkaufspreis oder bis zu 300 € Provisionen verdienen. Jeder profitiert von Jedem! Gemeinsam stark! Jetzt anmelden
spl ist offline   Mit Zitat antworten
Alt 16.03.2004, 20:14   #12
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
@webmichl: bin auch schon gespannt!

@spl: danke, ich werd es morgen gleich ausprobieren und geb dann bescheid!

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten
Alt 16.03.2004, 22:29   #13
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
Darf ich mirmachen?

Allein mit Regex bekomm ich's leider nicht hin... Aber der e-modifier ist schon was feines
PHP-Code:
$zahl preg_replace("/^0*/e",'str_repeat(" ", strlen("\\\\0"))',$zahl); 
Gruss
Jan
Stuck Mojo ist offline   Mit Zitat antworten
Alt 17.03.2004, 09:30   #14
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Und der Gewinner ist ...

Stuck Mojo



Ich danke euch allen für die Hilfe!!

lg
Flow
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten
Alt 17.03.2004, 09:48   #15
TP-Veteran
 
Benutzerbild von Flow09
 
Registriert seit: Jun 2001
Ort: Wien
Flow09 ist auf einem guten Weg
Ich hab gerade was gefunden was wahrscheinlich auch funktioniert hätte!

PHP-Code:
<?PHP
$customer_id 
"0000030061971";
$truncate intval($customer_id );
echo 
"$truncate";
?>
Output 30061971
__________________
Lesser known Programming Languages #13: SLOBOL
... Although many compilers allow you to take a coffee break while they compile, SLOBOL compilers allow you to travel to Bolivia to pick the coffee. Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a SLOBOL program to compile. Weary SLOBOL programmers often turn to a related (but infinitely faster) language, COCAINE.
Flow09 ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Nullen durch Leerzeichen ersetzen Nullen durch Leerzeichen ersetzen
« Domainnamen abfragen | popup soll wert aus frameset auslesen »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

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 an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:36 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35