String mit variabler stelle überprüfen?

mhribernik

Erfahrenes Mitglied
Hallo!

Ist es möglich einen String zu prüfen, ob er eine statische, gefolgt von einer dynamischen beinhaltet? Also ob der String gleich "hallo_xxx" ist? xxx ist dabei eine variable zusammensetzung aus Buchstaben mit unbekannter länge. Kann also mal "hallo_welt", "hallo_morgen&abend" oder "hallo_DU_22.4" sein.

Wie kann man das lösen? Hab mal was über reguläre Ausdrücke gelesen. Bin mir nicht sicher ob es das ist was ich meine. Kann mich sowieso nuch licht erinnern.


Ich danke euch im Voraus für euer Bemühen.
mfg.
Marko
 
Ja sicher, alles ist möglich *g*

Es kommt drauf an was das xxx ist?
Kennst du den Wert von xxx?
Wenn ja dann kannst du ja ganz leicht abprüfen:

if ($string == ("hallo_".$xxxVariable)

Wenn das hinter "hallo_" nicht genau bekannt ist wie zB das hier : *foo*
Dann kannst du mithilfe von Regual Expressions arbeiten.

Aber Regular Expressions sind ein komplexes Thema.....
Am besten du suchst mal nach nem anständigen Tutorial
Die PHP Regex funkion kannst du hier studieren: http://www.php.net/regex

für die oben genannte *foo* abfrage kannst du so abfragen:

if ( ereg( "hallo_.*foo.*, $string) )

Lg, Yanick
 
Danke für deine Antwort.

Nein, alles hinter "hallo_" ist unbekannt. Es können Buchstaben (A-Z,a-z), Nummern, Leerzeichen und/oder sonderzeichen vorkommen.


Kann jeamand vieleicht so eine Expression "zusammenbauen"?
 
PHP:
if(preg_match("#hello_(.*)#i", $string))
{
   echo "Irgendwas";
}

Habs nicht getestet, sollte aber gehen.
 
Hallo,

warum nicht einfach so?
PHP:
<?php
if (substr($string, 0, 6) == 'hallo_') {
    // tu dies
}
?>

@fanste: Dieser Ausdruck würde aber auch auf Strings passen, in denen „hallo_“ irgendwo auftaucht (nicht zwingend am Anfang).

Grüße,
Matthias
 
Zurück