Ich bin relativ neu zu schreiben Ado-Dateien in Stata und stieß auf ein Problem, für das ich keine Lösung finden kann.Stata Ado Syntax mit doppelten Anführungszeichen
Ich hätte gerne eine Option in meinem Programm, die twoway
Option verwendet werden kann (siehe help twoway_options
) und haben ein Problem bei der Verwendung von Anführungszeichen entweder mit nur Leerzeichen oder innerhalb von Unterbefehlen wie unten gezeigt.
sysuse gnp96, clear
capture prog drop adding_quotes
prog def adding_quotes
syntax [, tw_opts(string)]
line gnp96 date, `tw_opts'
end
// throws error
adding_quotes, tw_opts(text(7000 97 "Middle Text"))
adding_quotes, tw_opts(xtitle(" "))
// runs
adding_quotes, tw_opts(text(7000 97 `""Middle Text""'))
adding_quotes, tw_opts(xtitle(""))
Ich würde auch beachten Sie, dass mit dem syntax
Befehl tut weg wird auch das Problem lösen, aber ich würde es eher halten und nicht den ganzen Befehl analysieren müssen.
Ist es möglich, den Befehl syntax
so zu ändern, dass die beiden Befehle, die Fehler auslösen, funktionieren?
Ich bin über eine zweite Lösung zusätzlich zu Nick's gestolpert, die für bestimmte Situationen besser sein könnte, anstatt "tw_opts (string)" zu verwenden, wenn man 'tw_opts (string asis)' verwendet, wird das resultierende lokale 'tw_opts' Eingabe wie von den Argumenten und in der Lage sein, irgendwelche der oben genannten auszuführen. –
Gut, aber das war mein Punkt # 3. –