• Guten Abend,

    gibt es mit PHP eine Möglichkeit folgendes zu erreichen. Alle Zeichen die VOR einem "- " stehen abschneiden? So sehen die Einträge zum Teil aus

    Hallo - XXX
    HalloA - XXX

    Hallo ist in diesem Fall nur ein Platzhalter. Mist ist wichtig, was NACH dem - steht. Alles davor inkl. dem - möchte ich ausblenden. Habt ihr eine Idee?

  • Oder http://php.net/manual/de/function.str-replace.php

    PHP
    str_replace('Hallo - ', '', $string);
    // str_replace('search, replace, string);


    Oder mehrere Zugrleich

    PHP
    $search = array('Hallo - ', 'HalloA - ');
    str_replace($search, '', $string);


    Das funktioniert aber nur dann, wenn es immer ein "Hallo - ", "HalloA - " usw ist.
    Sobald es zB ein "Hallo-" oder "hallo a - " (...) ist, dann das was wolf sagt (regex ^= mehr Möglichkeiten).

  • Wenn der Aufbau immer gleich ist ginge auch explode:

    PHP
    $string = "HalloA - xxx";
    $newString = explode("-", $string)[1];

    Wobei cotttons Methode mit str_replace die schnellste ist, RegEx ist mit Abstand am Langsamsten (275% langsamer als str_replace). Explode ist etwa 30% langsamer als str_replace.

  • Man muss halt bedenken, dass dabei ein Array erstellt wird. Die performen natürlich etwas langsamer, was aber nicht unbedingt Schlecht sein muss. Der Vorteil ist halt, dass man auch gleich alles vor dem Bindestrich zur Verfügung hat (falls benötigt).

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!