ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
3506
3506
EMPFEHLEN
-
Hi,
ich wollte mal fragen, ob es ne Möglichkeit gibt, ein Datum mit Hilfe von preg_replace() durch einen bestimmten Text zu ersetzen?
Bsp.: 1.12.2003 soll durch "Datum" oder irgendeinen anderen Text ersetzt werden.
Könnte mir jemand dazu vielleicht einen Link zur "Definition" von preg_replace() geben?
Danke schonmal im Vorraus.
Mfg Shorty
edit:
habe mal versucht, das selber zu machen und zwar mit diesem Code hier:
Allerdings wird dann, wenn unter dem Datum noch ein Text steht, der ganze Text mit durch das Wort "Datum" ersetzt. Ich weiss nicht mehr, wie ich das sonst noch anstellen soll, so dass nur das Datum ersetzt wirdPHP-Code:$post['message']=preg_replace("/([0-9]{1,2})+(.)+([0-9]{1,2})+(.)+([0-9]{1,4})/", "Datum", $post['message']);
. Hat keiner ne Idee?
Geändert von shorty (22.11.03 um 04:13 Uhr)
-
Könntest du bspw. so machen...
...der Ausdruck sucht erstmal nach Zeichenketten in $txt, welche dem Muster entsprechen. Findet er eine, wird noch überprüft, ob es ein gültiges Datum ist (wäre ja denkbar, dass eine andere Zeickenkette,bspw. ne IP-Adresse, dem Muster entspricht)... wenn ja, wird der String durch [Datum] ersetzt.PHP-Code:<?php
function isDate($date)
{
$parts=explode('.',$date);
$months=array(0,31,29,31,30,31,30,31,31,30,31,30,31);
$dd=(int)$parts[0];$mm=(int)$parts[1];$yyyy=(int)$parts[2];
if(!$dd||!$mm||!$yyyy){return $date;}
if(@mktime(0,0,0,$mm,$dd,$yyyy)<1){return $date;}
if($dd>$months[$mm]){return $date;}
if($mm==2&&$dd==29){
if($yyyy%4){return $date;}
if(!$yyyy%100&&$yyyy%400){return $date;}
}return '[Datum]';
}
$txt=preg_replace("/(\D?)(\d?\d\.\d?\d\.\d{4})(\D?)/e","'\\1'.isDate('\\2').'\\3'",$txt);echo $txt;
?>
Infos zu preg_replace() findest du im im PHP-Handbuch auf www.php.net(bin zu faul, den genauen Link herauszusuchen
) ...
Weiteres zu regulären Ausdrucken gibts z.B. bei SelfHTML
Ähnliche Themen
-
Platzhalter durch Array-Wert ersetzen (preg_replace)
Von BLC im Forum PHPAntworten: 2Letzter Beitrag: 21.04.10, 12:46 -
Zeichenfolge durch NULL / nichts ersetzen und somit löschen (preg_replace)?
Von Blaafer im Forum PHPAntworten: 3Letzter Beitrag: 22.12.08, 08:32 -
keyword durch eine Funktion ersetzen mit preg_replace
Von 2low im Forum PHPAntworten: 2Letzter Beitrag: 05.10.08, 17:14 -
preg_replace Text durch Variableninhalt ersetzten
Von max im Forum PHPAntworten: 7Letzter Beitrag: 18.12.05, 14:35 -
Heutiges Datum durch Heute ersetzen
Von PHPlehrling im Forum PHPAntworten: 2Letzter Beitrag: 22.04.03, 14:30





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren