In einem String die ersten X Zeichen entfernen - dabei NICHT Wörter zerstören

K

Kristian

Hi, wie beschrieben habe ich einen String:

$string = "Warum gehen Ameisen nicht in die Kirche?"

aus dem soll folgendes gemacht werden (wenn x= 13):

$string = "Ameisen nicht in die Kirche?"

Wichtig ist, das die Wörter nicht zersört werden. preg_replace, substr usw klappt irgendwie nicht bei mir. Mag mir mal jemand diesen Einzeiler geben? :D
 
Ich würde hier keinen Einzeiler sehen.

Bitte die Code-Tags benutzen, das erleichtert das Lesen ungemein.

Ich würde es so oder ähnlich machen:

PHP:
$String = "Warum gehen Ameisen nicht in die Kirche?"
$Cut = 13;
while($String[$Cut] !== " ") {
    $Cut++;
}

Und hinterher ein substr oder ähnliches bis zum neuen Cut.


Nicht ausprobiert, dürfte aber funktionieren. Angenommen es ist immer das Leerzeichen, welches ein "Wort" definiert.
 
Ich hatte mal ein ähnliches Problem und hab es so gelöst.
PHP:
$trennen = strpos($quellstring, " ", 150);
$zielstring = substr($quellstring, $trennen);
Damit trennt er immer VOR der Grenze, also so wie in deinem Beispiel.

!Edit: War ein Fehler drin. Jetzt nimmt er das Ende des Strings, vorher war es der Anfang.
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück