Dear All,
how do I get the list of variables used in an if-condition passed to
my Stata program?
obviously all sorts of logical expressions and functions are permitted
in the if-condition.
program foobar
syntax [if]
// ... determine which vars are used in the if-condition and put
them in var_list ...
// ... compute something ...
end
I am looking for an elegant solution, the one that would not involve,
say, dropping vars one
by one and checking if the expression is still computable.
One solution is to replace all the ! ~ ^ + - * / = < > ] and ) to
spaces, then look at the tokens left.
Those with ( immediately following are function names, those with [ or
a space immidetely
following are variables. (and we can use -capture confirm variable- to
check that).
Is there any problem with such an approach? (e.g. factor variables in Stata 11?)
Is there a better (or a standard/existing) approach to the problem?
Thank you, Sergiy Radyakin
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/