Hallo,
in einer Stringvariablen steht folgender Text:
Gemeinschaftspraxis<1>Dr. med. Horst Birken<1>Dr. med. Dr. med. dent. Mark Schober<1>Dr. med. Dr. med. dent. Thomas Roth <1>Fachärzte für Mund-Kiefer-Gesichtschirurgie
Ich möchte den Text vor jedem <1> in eine neue Variable setzen.
Also v1= Gemeinschaftspraxis, v2=Dr. med. Horst Birken, usw.
Die Anzahl an '<1>' ist unterschiedlich, und die Textlänge dazwischen ebenfalls.
Ich würde mich sehr freuen, wenn mir jemand helfen kann, das Problem zu lösen.
Im voraus vielen Dank!
String auslesen
-
- Moderator
- Beiträge: 304
- Registriert: 17.01.2006, 19:20
In Programmiersprachen gibt es für solche komplexen Aufgaben "reguläre Ausdrücke"...
Ich würde bezweifeln, dass sich so etwas alleine mit SPSS lösen lässt. Evtl. weiss hier aber jemand mehr...
Ich würde bezweifeln, dass sich so etwas alleine mit SPSS lösen lässt. Evtl. weiss hier aber jemand mehr...
Literatur?
Bücher zum Thema SPSS und Statistik (Amazon)
Bücher zum Thema SPSS und Statistik (Amazon)
-
- Beiträge: 1
- Registriert: 18.08.2008, 21:43
bitte
/*einfach in den Syntax-Editor kopieren, str+R drücken. vorher korrekte speicherote überprüfen. Alle Hochkommata müssen im Syntax bleiben.
/*Grundsätzlicher Weg: Datei als .dat exportieren, anschließend wieder importieren und dabei die '<' als Begrenzer angeben.
SAVE TRANSLATE OUTFILE='SPEICHERORT ANGEBEN\test.dat'
/TYPE=TAB /MAP /REPLACE /FIELDNAMES.
exe.
new file.
get data
/type = txt
/file = 'SPEICHERORT\test.dat'
/delcase = line
/delimiters = '<'
/arrangement = delimited
/firstcase = 1
/importcase = all
/variables =
v1 a50
v2 a50
v3 a50
v4 a50
USW, JE NACH DEM WIE VIELE VARIABLEN (Stellen zwischen den <1> DU HAST
.
exe.
/*'1>' WEGMACHEN.
compute v2 = replace (v2,'1>','').
compute NÄCHSTE VARIABLE = replace (NÄCHSTE VARIABLE,'1>','').
exe.
/*Grundsätzlicher Weg: Datei als .dat exportieren, anschließend wieder importieren und dabei die '<' als Begrenzer angeben.
SAVE TRANSLATE OUTFILE='SPEICHERORT ANGEBEN\test.dat'
/TYPE=TAB /MAP /REPLACE /FIELDNAMES.
exe.
new file.
get data
/type = txt
/file = 'SPEICHERORT\test.dat'
/delcase = line
/delimiters = '<'
/arrangement = delimited
/firstcase = 1
/importcase = all
/variables =
v1 a50
v2 a50
v3 a50
v4 a50
USW, JE NACH DEM WIE VIELE VARIABLEN (Stellen zwischen den <1> DU HAST
.
exe.
/*'1>' WEGMACHEN.
compute v2 = replace (v2,'1>','').
compute NÄCHSTE VARIABLE = replace (NÄCHSTE VARIABLE,'1>','').
exe.