Suchen
Inside Forum
Nützliche Links
PHP Jobs
phpforum.de Tipp
 
phpforum.de bei Facebook
 
phpforum.de bei Twitter
 
PHP Test


werbung



Zurück   PHP Forum: phpforum.de > PHP > PHP

PHP Alles rund um PHP

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 20.08.2004, 16:06
Martin_Tab Martin_Tab ist offline
Neuer Besucher
 
Registriert seit: 20.08.2004
Beiträge: 2
Standard

Hallo!

ich habe mit der folgenden Sourcecode versucht ungültige Zeichen aus einem Text ($str) zu entfernen:
PHP Quellcode:
<?php

    $str = 'Dies ist ein Text ,.- mit eingen Sonderzeichen und Nummern: 21212';
   
  echo (ereg('[A-Za-z0-9]*', $str, $res).'
'
);
 
  Echo ('str='.$str.'
'
);
  Echo ('0='.$res[0].'
'
);

?>
Ich erwate jetzt eigentlich das $res[0] mit den Text:
Code:
DiesisteinTextmiteingenSonderzeichenundNummern21212
zurück gibt. Leider nicht :-(

Kann mir jemand sagen wie ich die Funktion benutzen muss um das o. g. Ergebnis zu erhalten.

Vielen Dank!

Gruß
Martin
Mit Zitat antworten
  #2  
Alt 20.08.2004, 16:18
alexander alexander ist offline
Vorbildlicher Helfer
 
Registriert seit: 04.02.2004
Beiträge: 4.791
Standard

wie willst du mit ereg() zeichen entfernen? ereg() sucht nur nach bestimmten mustern und gibt true im erfolgsfalle, false sonst zurück (http://www.php.net/manual/de/function.ereg.php).

ansonsten versuchs hiermit:
PHP Quellcode:
echo preg_replace("/\W/", "", $str);
__________________
"Es gab eine Zeit, als Zeitungen sagten, nur zwölf Menschen verständen die Relativitätstheorie. Ich glaube nicht, dass es jemals eine solche Zeit gab. Auf der anderen Seite denke ich, es ist sicher zu sagen, niemand versteht Quantenmechanik." - R. Feynman
Mit Zitat antworten
  #3  
Alt 23.08.2004, 11:36
Martin_Tab Martin_Tab ist offline
Neuer Besucher
 
Registriert seit: 20.08.2004
Beiträge: 2
Standard

Hallo Alexander!

Das hilft mir schon mal weiter. Danke!

Mit dem Suchmuster "\W" werden ja alle nicht alphanumerischen Zeichen gefunden. Kann ich da auch irgendwie das Leerzeichen ausschließen? Habe es schon mit der Kombination "\W" und "\S" versucht aber das klappt irgendwie nicht.

Mein Ziel ist es alle nicht alphanumerischen Zeichen zu entfernen und alle Leerzeichen durch das "+"-Zeichen zu ersetzen. Das habe ich leider in meinem Posting oben nicht geschrieben, sorry!

Kann mir da noch jemand helfen?

Danke!

Gruß
Martin
Mit Zitat antworten
  #4  
Alt 23.08.2004, 14:08
alexander alexander ist offline
Vorbildlicher Helfer
 
Registriert seit: 04.02.2004
Beiträge: 4.791
Standard

PHP Quellcode:
$str = 'Dies ist ein Text ,.- mit eingen Sonderzeichen und Nummern: 21212';
$str = preg_replace("/(\W)/e", "'\\1'==' '?'+':''", $str); # entfernt alle nicht alphanumerischen zeichen und ersetzt leerschritte durch das +
$str = preg_replace("/(\+){2,}/","+", $str); # aufeinanderfolgende + werden auf genau ein + reduziert
echo $str;
__________________
"Es gab eine Zeit, als Zeitungen sagten, nur zwölf Menschen verständen die Relativitätstheorie. Ich glaube nicht, dass es jemals eine solche Zeit gab. Auf der anderen Seite denke ich, es ist sicher zu sagen, niemand versteht Quantenmechanik." - R. Feynman
Mit Zitat antworten


Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu
Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Zeichen aus String entfernen Mansaylon PHP 13 28.08.2007 18:34
"neue Zeile" Zeichen aus einem String Entfernen positron PHP 3 27.12.2006 19:07
Zeichen aus String entfernen duesentrieb JavaScript 1 28.10.2005 18:28
letztes Zeichen aus einem String entfernen meakmok PHP 2 14.01.2004 22:44
Zeichen aus String entfernen XxXenon PHP 3 20.04.2003 14:03


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:43 Uhr.


Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Powered by NuWiki v1.3 RC1 Copyright ©2006-2007, NuHit, LLC