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!
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
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.
Ready to level-up your skills? Choose your own adventure.