Veröffentlicht am :
Macro CREATION_INTERNE

Extrahieren des ersten Elements einer Zeichenkette mit %SCAN

Dieser Code ist auch verfügbar auf: English Español Français
Das Hauptziel dieses Codes ist es zu veranschaulichen, wie Zeichenketten in Makrovariablen manipuliert werden. Er beginnt mit der Definition einer Makrovariablen namens `varlabel`, die mehrere durch Kommas getrennte Werte enthält. Anschließend wird die Makrofunktion %SCAN verwendet, um das erste 'Wort' oder 'Token' dieser Zeichenkette mit dem Komma als Trennzeichen zu isolieren. Das Ergebnis wird in einer neuen Makrovariablen, `bbb`, gespeichert. Schließlich wird der Wert von `bbb` über die %PUT-Anweisung im SAS©-Log angezeigt. Der Befehl 'quit;' ist vorhanden, hat aber ohne eine vorherige aktive SAS©-Prozedur in diesem Kontext keine spürbare funktionale Wirkung.
Datenanalyse

Type : CREATION_INTERNE


Die verarbeiteten Daten sind Zeichenketten, die direkt im Skript über Makrovariablen definiert werden. Es findet kein Lesen von externen oder internen SAS-Datensätzen (wie SASHELP) statt, noch wird eine traditionelle SAS-Datensatz-Erstellung durchgeführt.

1 Codeblock
Macro
Erklärung :
Dieser Block initialisiert die Makrovariable `varlabel` mit einer Liste von Impfstoffen. Anschließend verwendet er die Makrofunktion `%SCAN`, um den ersten Wert ('Flu vaccine') aus `varlabel` zu extrahieren, wobei das Komma als Trennzeichen dient, und weist diesen der Makrovariablen `bbb` zu. Die Anweisung `quit;` beendet jede möglicherweise geöffnete SAS-Prozedur, obwohl hier keine aktiv ist. Schließlich schreibt `%PUT` den Wert von `bbb` in das SAS-Log, um die korrekte Extraktion zu überprüfen.
Kopiert!
1%let varlabel= Flu vaccine,Tetanus-diptheria,Hepatitis B vaccine,Hepatitis A vaccine,PPD,Pneumovax;
2 
3%let bbb= %scan("&varlabel",1,',');
4QUIT;
5%put the 1st is &bbb;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.