 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
01.06.2004, 14:50
|
#1
|
|
TP-Veteran
Registriert seit: Jun 2001
Ort: Wien
|
Zeichen ersetzen
Hey,
ich hab folgendes Problem! Ich hab einen String aus Zahlen mit einigen Zeichen dazwischen (z.B.: 1234/123.456-001) und muss alle Slashes, Punkte & Co. rausnehmen so dass nur noch die Zahlen übrig bleiben!
OK, ich weiß das geht mir regular expressions, ich hab mir das ganze auch schon angeschaut aber ich komm mit den Suchmustern einfach nicht zurecht! Wäre bitte jemand so lieb mir zu helfen!
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.
|
|
|
01.06.2004, 14:58
|
#2
|
|
TP-Moderator
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
|
PHP-Code:
<?php $str = preg_replace("/[^\d]/","",$str); ?>
...ungetestet... sollte aber "nah" rankommen...
Gruss
Jan
|
|
|
01.06.2004, 15:30
|
#3
|
|
TP-Veteran
Registriert seit: Jun 2001
Ort: Wien
|
Funktioniert!
Danke Jan!
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.
|
|
|
11.09.2007, 13:39
|
#4
|
|
TP-Veteran
Registriert seit: Nov 2002
Ort: bei Stuttgart (Esslingen)
|
hoi Jan,
ne Idee wie ich Zahlen am Stück ersetzen kann.
also aus zB.73728 soll dann PLZ als Link da stehen.
Versuch grad mich an dem ersetzen befehl aber das funzt bei mir gar net :-(
|
|
|
11.09.2007, 14:14
|
#5
|
|
TP-Urgestein
Registriert seit: Nov 2003
Ort: NRW
|
Wie schaut denn nun der String genau aus und wie soll der Link dann aussehen?
BTW: Schön tief gegraben. 
|
|
|
11.09.2007, 14:26
|
#6
|
|
TP-Veteran
Registriert seit: Nov 2002
Ort: bei Stuttgart (Esslingen)
|
bin mal soweit :
PHP-Code:
$inhalt = "73728";
$link = ereg_replace('[0-9]{5}','<a href="#">PLZ</a>',$inhalt);
das funzt soweit . Nur wie bekomme ich das gefunden als Linktext da rein.
Also soll der Link auch 73728 heissen.
|
|
|
11.09.2007, 14:29
|
#7
|
|
TP-Urgestein
Registriert seit: Nov 2003
Ort: NRW
|
So?
PHP-Code:
$inhalt = "73728"; echo $link = ereg_replace('[0-9]{5}','<a href="'.$inhalt.'">PLZ</a>',$inhalt);
|
|
|
11.09.2007, 14:37
|
#8
|
|
TP-Moderator
Registriert seit: Aug 2004
Ort: Kaiserslautern
|
Oder so?
PHP-Code:
$plz = "Ich wohne in 04711 Timbuktu.";
echo preg_replace( "/(\b\d{5}\b)/", "<a href=\"plz_\\1.htm\">\\1</a>", $plz );
__________________
#.Viele Grüße, Andreas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
|
|
|
11.09.2007, 14:37
|
#9
|
|
TP-Veteran
Registriert seit: Nov 2002
Ort: bei Stuttgart (Esslingen)
|
im prinzip ja, gar net schlecht nur das die Zahl alleine da stehen soll wenn diese im Inhalt gemischt ist wie zB.
$inhalt="abc73728abc";
dann geht das nicht mehr.Deswegen wollte ich auch die Zahlenreihe finden und ersetzen.
|
|
|
11.09.2007, 14:45
|
#10
|
|
TP-Veteran
Registriert seit: Nov 2002
Ort: bei Stuttgart (Esslingen)
|
die idee von dir rizzo is gaub richtig, jedoch warscheinlich falsch geschrieben...da kommt gar keine Formatierung raus???
checkst du das bitte nochmal.
|
|
|
11.09.2007, 14:47
|
#11
|
|
TP-Urgestein
Registriert seit: Nov 2003
Ort: NRW
|
Der Ansatz von Andreas geht, wenn die Ziffern sep. stehen, also nicht an die Buchstaben angrenzen. Wenn das so ist, dann.
PHP-Code:
$inhalt="abc73728abc"; preg_match( "/\d{5}/", $inhalt, $match); echo "<a href=\"$match[0]\">PLZ</a>";
|
|
|
11.09.2007, 14:54
|
#12
|
|
TP-Veteran
Registriert seit: Nov 2002
Ort: bei Stuttgart (Esslingen)
|
Danke webcreate , das is ganz nah dran.
Nun ersccheint aber nur der Link PLZ ohne den ganzen Text drumrum.
und wenn ich das habe:
$inhalt="abc73728abc1234hhg123456";
sollen mir auch die 6 stelligen ausgegeben werden.
Und ganz wichtig soll nur die Zahl als Link ersetzt werden und nicht der ganze Text verschwinden.
Ich möchte also erreichen das eine 5 oder sechstellige Zahl in einem text mit der Zahl selbst ersetzt wird...nur als Link eben.
geht das auch?
hab auch folgendes versucht...aber da gibt die funktion mir immer nur das eine ergebnis aus.
PHP-Code:
$inhalt = "asd12345ouuo123456kjlkjlk1234";
function suchersetz() {
global $inhalt;
$a=preg_match( "/\d{5,}/", $inhalt, $match);
return $match[0];
}
echo $link = preg_replace( '/\d{5,}/', '<a href="plz_1.htm">'.suchersetz().'</a>', $inhalt );
Geändert von Scriff (11.09.2007 um 15:07 Uhr).
|
|
|
11.09.2007, 15:32
|
#13
|
|
TP-Moderator
Registriert seit: Aug 2004
Ort: Kaiserslautern
|
Mann Mann Mann, geb doch mal einen konkreten Fall und komm nicht mir jeder Antwort mit etwas neuem an. Entweder hat man einen Text in dem eine PLZ vorkommt oder nicht. Liefert man dafür 'ne Lösung, kommst Du an und bringst etwas ganz anderes. Ich bezweifle auch, daß deine Strings so aussehen "asd12345ouuo123456kjlkjlk1234", weil das garantiert auch nicht's mit PLZ zu tun hat.
Das was Du vorhast geht natürlich irgendwie, nur habe ich (und sicherlich auch andere User) keine Lust auf rätselraten, daher ist hier die ultimative Hilfe:
RegEx Tutorial zum verstehen
RegEx Patterns für fertige Lösungen
preg_match zu finden von Pattern
preg_match_all noch mehr finden von Pattern
preg_replace zum suchen & ersetzen mit Pattern
Viel Erfolg und gutes Gelingen!
p.s. noch als Tipp: für dein Vorhaben wirst Du wahrscheinlich preg_match_all benötigen.
__________________
#.Viele Grüße, Andreas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
|
|
|
11.09.2007, 15:37
|
#14
|
|
TP-Special Mod
Registriert seit: Feb 2005
Ort: Haan / NRW
|
warum nicht einfach so?
PHP-Code:
echo preg_replace( '/\d{5}/', '<a href="plz_1.htm">$0</a>', $inhalt );
|
|
|
11.09.2007, 15:40
|
#15
|
|
TP-Veteran
Registriert seit: Nov 2002
Ort: bei Stuttgart (Esslingen)
|
vielen Dank für die Tips...hab dann so hinbekommen.
PHP-Code:
$inhalt = eregi_replace("([0-9]{5,})","<a href=\"#?id=\\1\">\\1</a>",$inhalt);
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| 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.
HTML-Code ist aus.
|
|
|
Ähnliche Themen
|
| Thema |
Autor |
Forum |
Antworten |
Letzter Beitrag |
|
| | |