DATA Step, Macro, Functions and more

how do I find words in text using find()

Reply
Contributor
Posts: 34

how do I find words in text using find()

I am trying to find a word with .Character string 'with' in the title and is zero if there is no first occurrence of 'with' in the text.Moreover, I dont want WITH or WitH type of words.  I am using the following code. I am not getting proper output. It is not giving me the numeric value of with in the title or text. Hope to hear suggestions. 

 

data want;

set have;

length firstwith 4;
firstwith = (findw(lowcase(string),'with')>0);
run;

Super User
Posts: 17,829

Re: how do I find words in text using find()

[ Edited ]

You're close. 

 

Your function appears correct, but you don't need the > 0 portion. That turns it into a true/false calculation rather than returning the index. 

 

You also shouldn't apply lowcase if your test is case sensitive. And since you're searching for a word, use FINDW()

 

Index_with = findw(string, 'with');

Ask a Question
Discussion stats
  • 1 reply
  • 347 views
  • 0 likes
  • 2 in conversation