Dear Statalister

I'm working on a dataset and I need to create a dummy variable equals 1 if the string variable contain words or phrases from a list of keywords. I'm using the following code:

global keyword "AA BB CC"

foreach i of global keyword3{

gen Dummy_`i'= strpos(string, "`i'") > 0
}

This code works find if the keyword is a single word. However if it is a phrase, such as "low AA" or "middle AA" then the code will create different variables for each word in the phrase.

The list of keywords are very long so I would prefer to use loop function for it.
I would highly appreciate if you can please help me to come up with a way to deal with this issue.

Thank you very much in advanced