Suchen und ersetzen mit Regular Expressions

Hallo,
ich habe einen Text und möchte immer nur einen bestimmten Teil daraus,
Name und Vorname.

Mein Text siehts so aus:

Namer/Vorname:Hans-Peter Müller,Alter:36Jahre,Wohnort:Berlin,Name/Vorname:Stefan Mayer,Alter:87,Wohnort:München, … und so weiter

ich möchte jetzt als ergebnis nur:

Hans-Peter Müller
Stefan Mayer
… und so weiter

ich denke das geht mit regulären Ausdrücken aber ich hab jetzt schon ewig rumprobiert und google 2 stunden, … ich verstehs einfach nicht??
Kann mir vielleicht jemand helfen?
Als Programm hab ich Dreamweaver oder nen Texteditor.

mfg
tobi

$Zeichenkette = "Name/Vorname:Hans-Peter Müller,Alter:36Jahre,Wohnort:Berlin,Name/Vorname:Stefan Mayer,Alter:87,Wohnort:München, .... und so weiter" ;
$Suchmuster = "/Name\/Vorname:frowning:[\s\wöäüÖÄÜß -]+)/";
$booole = preg\_match\_all ( $Suchmuster ,$Zeichenkette , $Treffer,PREG\_OFFSET\_CAPTURE);

print\_r ($Treffer);

z.b.

Hallo, Tobias,

ich habe einen Text und möchte immer nur einen bestimmten Teil
daraus, Name und Vorname.
Mein Text siehts so aus:

ich möchte jetzt als ergebnis nur:

Hans-Peter Müller
Stefan Mayer
… und so weiter

ich denke das geht mit regulären Ausdrücken aber ich hab jetzt
schon ewig rumprobiert und google 2 stunden, … ich verstehs
einfach nicht??
Kann mir vielleicht jemand helfen?
Als Programm hab ich Dreamweaver oder nen Texteditor.

Dreamweaver & Texteditor? Aber Du meinst schon PHP, oder?
Also ich würde das nicht mit regulären Ausdrücken machen,
da die Daten bereits ein bestmmtes Format haben. Erstens
sind es CSV (comma separated value) getrennte Records
und jeder Record ist nochmal mit ‚:‘ getrennt. Das
sollte man auch genauso angehen. Also erst nach ‚,‘
zerlegen (splitten) und dann nach ‚:‘. Also etwa so:


$text = preg_replace(’/[\n\r]/’, ‚‘,
‚Name/Vorname:
Hans-Peter Müller,Alter:36Jahre,Wohnort:Berlin,
Name/Vorname:Stefan Mayer,Alter:87,Wohnort:München,…‘
); # Zeilenwechsel \n entfernen

$name = ‚Name/Vorname‘;
$altr = ‚Alter‘;
$wohn = ‚Wohnort‘;

foreach( preg_split(’/,/’, $text) as $record) { # String in Records zerlegen
$data = preg_split(’/:/’, $record); # Record in 2 Felder zerlegen
switch( $data[0] ) { # erstes Feld - Kennnung:
case $name: echo „$data[1]\n“; break; # zweites Feld Inhalt:

case $altr: echo „$data[1]\n“; break;

case $wohn: echo „$data[1]\n“; break;

}
}

Grüße

CMБ