Hi all,
I need advise for how to wrap a text string to a new line before parenthesis:
Variable value looks like this with varying lengths but same value/parenthesis format:
450 mg (450 mg TDD)
want output to look like this in output:
450 mg
(450 mg TDD)
I remember it is something like ~n but not sure how to use it?
Thanks!
data want;
k='450 mg (450 mg TDD)';
var=substr(k,1,index(k,'(')-1);
output;
var=substr(k,index(k,'('));
output;
run;
are you read a raw data or dataset? the above works if you are reading a dataset
@novinosrin I'm sorry I need to clarify more 🙂
I don't need two separate observations but rather I need same line that will wrap to a new line in a report.
So maybe how can I add the ~n before the '(' ?
k='450 mg ~n (450 mg TDD)';
Is this for a report? I believe the method varies slightly depending on the output destination, you usually use ODS ESCAPECHAR and then SPLIT as well specified within PROC REPORT statement.
@jenim514 wrote:
Hi all,
I need advise for how to wrap a text string to a new line before parenthesis:
Variable value looks like this with varying lengths but same value/parenthesis format:
450 mg (450 mg TDD)
want output to look like this in output:
450 mg
(450 mg TDD)
I remember it is something like ~n but not sure how to use it?
Thanks!
Ok, I figured it out by just breaking the var into two variables, then inserting the escapechar
trt1= scan(trt01p,1,'(');
if trt01p ^='Placebo' then trt2=substr(trt01p,index(trt01p,'('));
newtrt= catx ('~n',trt1, trt2);
Thanks all!
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.