Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
preg_replace [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
preg_replace


 
Opor
02-08-2006, 16:29 
 
Hallo Zusammen,

ich versuche schon seit geraumer Zeit folgenden String durch preg_replace zu bereinigen.

$teststr="        sspTEST   Untersuchung      "

als Ergebnis soll der String
TEST   Untersuchung
ohne Leerzeichen nach dem letzten Wort und ohne   herauskommen.

Kann mir da mal jemand zur Hand gehen???

Bis jetzt habe ich keine Lösung gefunden.

preg_replace("/([ ]*[ ]*[ ]*)*(.*)/","$2",$teststr)

Liefert mir zwar erstmal schon nur den Text ab TEST, aber das ende bekomme ich einfach nicht weg....

Vielen Dank für eure Hilfe

 
mrhappiness
02-08-2006, 16:39 
 
$test = str_replace(' ', chr(1), $test);
$test = str_replace(' ', chr(2), $test);
$test = preg_replace('/['.chr(1).chr(2).']+$/', '', $test);
$test = str_replace(chr(1), ' ', $test);
$test = str_replace(chr(2), ' ', $test);

 
Opor
02-08-2006, 16:42 
 
Vielen Dank erstmal,

aber leider hilft es nicht weiter.
Ich muss dafür sorgen, dass das  und die Leerzeichen zwischen TEST und Untersuchung erhalten bleiben. Ansonsten wäre die Sache ja einfach.

 
mrhappiness
02-08-2006, 16:45 
 
Hab's geändert

 
Opor
02-08-2006, 16:46 
 
Ist es möglich die gesamte Sache mit einem Pregmatch abzugelten???
In der Art:


$teststr=preg_replace("/([ ]* *[ ]*)*(.*) ([ ]* *[ ]*)*/is","$2",$teststr);

 
Opor
02-08-2006, 17:53 
 
So nach weiterem probieren habe ich nun eine preg_replace, die meine geforderten Ansprüchen genügt: :-)



$test= "         sspTEST   TEST    Untersuchung      ";
$test=preg_replace("/(^([ ]* *)*)(.*\w)(([ ]*| *)*$)/is","$3",$test);


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