I have below text data
"If IsEqualTo Inclusion 1 then... set datapoint value for ILIST in Inclusion Criteria to LIST #1 - The subject is a boy or girl, aged ≥7 and <12years (patients who turn 12 years during the study will be allowed to continue in the game)., and execute the ""Return True"" custom function".
In this text i need to extract "The subject is a boy or girl, aged ≥7 and <12years (patients who turn 12 years during the study will be allowed to continue in the game)" i.e whenever it starts with "-" and ends with ".," then i need the text in between.
Any help
If your logic is acurate then that is simple:
/* Gets all text from - */ inter=substr(have,index(have,"-")); /* gets all text up to . */ want=substr(inter,1,index(inter,"."));
Assumes both are present etc.
If your logic is acurate then that is simple:
/* Gets all text from - */ inter=substr(have,index(have,"-")); /* gets all text up to . */ want=substr(inter,1,index(inter,"."));
Assumes both are present etc.
HI!
If your text is in a variable called "text", then this would work -->
want = scan(scan(text,2,'-'),1,'.') ;
Best regards,
Claes
Hello,
A solution with a regexp :
data have;
string='If IsEqualTo Inclusion 1 then... set datapoint value for ILIST in Inclusion Criteria to LIST #1 - The subject is a boy or girl, aged ≥7 and <12years (patients who turn 12 years during the study will be allowed to continue in the game)., and execute the ""Return True"" custom function';
extract=prxchange("s/.*-(.*)\..*/$1/",1,string);
run;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.