Hi all
I have some values containing text which can be in single or double quote marks. I would like to remove the quote marks plus the text inside
e.g.
have:
VAR1
hello "dog" is my pet
just text
hi 'people' how are you
want:
VAR1
hello is my pet
just text
hi how are you
thanks for your help
One way
data have;
input var1 $ 1 - 25;
datalines;
hello "dog" is my pet
just text
hi 'people' how are you
;
data want;
set have;
var1 = compbl(prxchange('s/".*"//', -1, prxchange("s/'.*'//", -1, var1)));
run;
One way
data have;
input var1 $ 1 - 25;
datalines;
hello "dog" is my pet
just text
hi 'people' how are you
;
data want;
set have;
var1 = compbl(prxchange('s/".*"//', -1, prxchange("s/'.*'//", -1, var1)));
run;
Thanks for helping..it works perfectly
Anytime 🙂
Peter.C
If there were multiple quote characters, your code would get wrong result.
Like this sort of data.
data have;
input var1 $ 1 - 40;
datalines;
hello "dog" is my pet "dog" xxx
just text
hi 'people' how are you 'people'
; data want; set have; var1 =prxchange("s/'.*?'|"".*?""//", -1, var1); run;
data have; input var1 $ 1 - 40; datalines; hello "dog" is my pet "dog" xxx just text hi 'people' how are you 'people' ;
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.