Hi guys,
If I run the following SAS code ,because there is a "(" in the parameter, I can't get the result I need . please help.
Thanks!
%macro test(a);
%put value of a is: &a;
%mend test;
%test(a=njhl5u#$%^&*(IJK44t95y7u45n64);/*this one doesn't work*/
Mike,
I sent you a solution in your previous thread, but I'll repeat it here:
%macro test(a);
%let a2=%nrbquote(&a);
%put a: &a2;
%mend test;
%test(a=aa)
%test(a=njhl5IJK44t95y7u45n64)
%test(a=%str(njhl5u#$%^&*%(IJK44t95y7u45n64))
Art
Mike,
I sent you a solution in your previous thread, but I'll repeat it here:
%macro test(a);
%let a2=%nrbquote(&a);
%put a: &a2;
%mend test;
%test(a=aa)
%test(a=njhl5IJK44t95y7u45n64)
%test(a=%str(njhl5u#$%^&*%(IJK44t95y7u45n64))
Art
Mike,
You properly identified the problem as the unbalanced parenthesis. Art properly identified one possible solution, although his example illlustrates how quoting functions require you to refer to ( as %( within the quoting function.
If it is an acceptable solution, get rid of the macro definition.
%let a=njhl5u#$%^&*(IJK44t95y7u45n64;
%put &a;
A partial solution might be possible as well:
%let a=njhl5u#$%^&*(IJK44t95y7u45n64;
%test (a=%superq(a))
Does this help at all?
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.