Aus String 3 Wörter ausschneiden

flukas

Mitglied
Guten Abend,

ich habe ein Problem. Mit Google bin ich leider nicht fündig geworden und selbst kann ich das Problem seit mittlerweile 3 Stunden auch nicht lösen.

Ich habe einen String mit 3 Wochentagen. In der Form:

DonnerstagFreitagSamstag

Nun möchte ich die einzelnen Tage ausschneiden und irgendwo abspeichern, aber das ist dann ja nicht das Problem. Es geht im Prinzip nur darum die 3 Worte einnmal zu extrahieren. explode, strtok, strpos, substr haben mich auch nciht recht viel weiter gebracht.

Kann mir vielleicht jemand helfen?


Vielen Dank im Voraus
Lukas
 
Hi,

wenn es nur um Wochentage geht, ist die Sache recht einfach:

PHP:
<?php
// Für leichtes Handling alle zu suchenden Werte in ein Array packen
$weekdays = array('Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag');

// Der zu durchsuchende String
$string = 'DonnerstagFreitagSamstag';

// Suchmuster erzeugen
$pattern = '/' . implode('|', $weekdays) . '/';

// Suche starten, Anzahl der Matches in $count, Treffer in $matches
$count = preg_match_all($pattern,$string, $matches);

// Zur Kontrolle ausgeben
echo "<pre>";
var_dump($matches);
echo "</pre>";
?>

Ich gehe allerdings davon aus, das der Inhalt von $string variabel ist.

Grüße
 
Zuletzt bearbeitet:
PHP:
// Für leichtes Handling alle zu suchenden Werte in ein Array packen
$weekdays = array('Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag');

// Der zu durchsuchende String
$string = 'DonnerstagFreitagSamstag';

foreach($weekdays as $day)
{
	if(strpos($string, $day) !== false)
	{
		$result[] = $day;
	}
}

print_r($result);

Und hier das Beispiel ohne den regulären Ausdruck.
 
Zurück