Replace the first temporarily by a mask of the same length.
. di strpos("frogtoadfrog", "frog")
1
. di strpos(subinstr("frogtoadfrog", "frog", "grog", 1), "frog")
9
This works for variables too.
See also -moss- (SSC) and
http://www.stata-journal.com/article.html?article=dm0056
Nick
njcoxstata@gmail.com
On 20 April 2013 15:54, Pedro Nakashima <nakashimapedrolist@gmail.com> wrote:
> Dear users
>
> I'm looking for a way to identify the position of a string, which is
> not the first.
>
> For example, when we use-strpos () - to find the underscore "_" in the word:
>
> ab_cd_ef
>
> The function strpos () will return 3. But I wanted to return the
> position of the second occurrence, 6.
>
> Does anyone know a way to deal with this problem?
>
> Best regards,
> Peter
> *
> * For searches and help try:
> * http://www.stata.com/help.cgi?search
> * http://www.stata.com/support/faqs/resources/statalist-faq/
> * http://www.ats.ucla.edu/stat/stata/
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/faqs/resources/statalist-faq/
* http://www.ats.ucla.edu/stat/stata/