2017-10-06 6 views
-2

Ich versuche, eine preg_match zu finden, die Zeichenketten filtert, die nur Sonderzeichen wie - enthalten.PHP preg_match Sonderzeichen nur

Die Zeichenfolge selbst kann jedoch Sonderzeichen enthalten, sie darf jedoch keine Sonderzeichen sein.

Irgendwelche Ideen, wie man das macht?

Ergebnis sollte true zurückgeben, wenn die Zeichenfolge nur Sonderzeichen enthält. So etwas wie

if(preg_match('//',$string)) echo $string; //I leave the pattern empty as this is the actual question. 
+1

Bitte zeigen Sie die erwartete Ausgabe und welches Ergebnis Sie gerade bekommen + Code –

+0

Kann nicht viel mit Code helfen, da ich nach dem passenden Muster suche. Ich weiß, wie man spezielle Zeichen in der Zeichenfolge findet, aber ich brauche es, um Zeichenfolgen zu filtern, die nur spezielle Zeichen wie ------ enthalten – blackswan

+0

Bitte geben Sie einige Testfälle. Eingabezeichenfolgen und erwartetes Ergebnis – Toto

Antwort

2

Sie müssen die Zeichenfolge für jedes alphanumerische Zeichen übereinstimmen.

$one= "%^&"; 
$two = "asd%asd"; 


function notOnlySpecialChars($str) { 
    if (preg_match('/[A-Za-z0-9]/', $str)) { //Replaced _ with - 
     return true; 
    } else { 
     return false; 
    } 
} 
notOnlySpecialChars($one); //false 
notOnlySpecialChars($two); //true 
+0

Vielen Dank! Ich war zu dumm, denke ich :-) – blackswan