PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   String auf zulässige Zeichen prüfen (http://www.selfphp.de/forum/showthread.php?t=15046)

popeye 02.11.2006 16:51:01

String auf zulässige Zeichen prüfen
 
Hallo,
gleich vorne weg, ja ich habe erst im Forum gelesen, zur den Funktionen ereg() und preg_match() gab's auch Treffer, trotzdem bin ich weiterhin ratlos!

Also mein Problem ist folgendes:
ich möchte aus einem string der maximal 4 bis 9 Zeichen lang ist, sämtliche Zeichen raushalten die nicht c k s t u und 0 bis 9 sind,
wobei in einem string entweder k01-99u01-99s01-99 enthalten sind oder c0001++ oder t0001++.
Nach diversen Versuchen sieht die entsprechende Code-Zeile so aus:

PHP-Code:

    if(preg_match('/^[kusct 0-9)]/i',$laenge$variable)) 


Kann mir wer aus dem Forum weiterhelfen, mein Dank sei Euch gewiss! :))

Socrates 02.11.2006 20:08:29

AW: String auf zulässige Zeichen prüfen
 
Hi erstma!
Also mit ereg_replace get es auf jeden fall ist halt viel text arbeit!
PHP-Code:

   $text $_POST["datei"];
   
$text ereg_replace("suche","ersetze"speicher in);
//Beispiel
   
$text ereg_replace("A",""$text);
//Suche: Groes A
//Ersetze durch: nichts
//Speicher in: Variable $text 

Is wie gesagt sehr viel Arbeit, aber habe keine Ahnung, wie du es anders machen willst!
Also viel Spaß beim Scripten!
MfG, Andy

xabbuh 02.11.2006 21:30:44

AW: String auf zulässige Zeichen prüfen
 
PHP-Code:

<?php
    
if(!preg_match('/^[ckstu0-9]{4,9}$/'$variable)) {
        
printf('%s ist keine gültige Eingabe'$variable);
    }
?>


popeye 06.11.2006 16:07:47

AW: String auf zulässige Zeichen prüfen
 
vielen Dank für die Antworten, habe letzteren code in mein script eingebaut, aber irgendwie funzt es trotzdem nicht :((

Die Eingabe c0001 wird z.B. als Fehler "ungültige Eingabe zurück gegeben",
auch die korrekte Feldbezeichnung K01U01S01 wird nicht akzeptiert.
Zur klein und großschreib' Unterscheidung habe ich noch den Modifier i ergänzt, nun sieht die Zeile dann so aus:
PHP-Code:

if(!preg_match('/^[ckstu0-9]{4,9}$/i'$variable)) 

Kann es sein das die Fehlermeldungen wegen des ^ erscheinen, weil die Zeichen laut Suchmuster ja in einer anderen Reihenfolge vorkommen?

Alternativ versuchte ich es so, leider auch ohne Erfolg:
PHP-Code:

if(preg_match('/^[(kus0-9){9}|(c0-9){5}|(t0-9){5}]$/i'$variable)) 

Also falls noch wer eine Idee für mich hat, bitte her damit!
vielen Dank!!!

Opendix 06.11.2006 16:34:33

AW: String auf zulässige Zeichen prüfen
 
hmm eigentlich müsste das doch so gehen:
PHP-Code:

<?php 
    
if(!preg_match('/^[cCkKsStTuU0-9]{4,9}$/'$variable)) { 
        
printf('%s ist keine gültige Eingabe'$variable); 
    } 
?>

möglich das es irgendei mit \i schönere Lösungen gibt aber ich kenn mich damit nicht so aus :)

meikel (†) 06.11.2006 19:02:33

AW: String auf zulässige Zeichen prüfen
 
Meinst Du das so:
http://test.php-help.info/test/36/ (Quelltext wird angezeigt)


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

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.