Statalist


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RE: RE: st: RE: problems on the string functions


From   [email protected]
To   statalist<[email protected]>
Subject   Re: RE: RE: st: RE: problems on the string functions
Date   Fri, 20 Nov 2009 23:18:51 +0800

Dear Nick,
thank you for your help. However, missing value is still generated after -capture-

. clear

. input str10 (v1 v2)

             v1          v2
  1. ab123d 12d
  2. efg34 f4
  3. end

. l

     +--------------+
     |     v1    v2 |
     |--------------|
  1. | ab123d   12d |
  2. |  efg34    f4 |
     +--------------+

. gen v3 = v1 

. 
. qui forval i = 1/10 { 
. 
. capture replace v3 = subinstr(v3, substr(v2, `i', 1), "", 1) 
. 
. }

. l

     +-------------------+
     |     v1    v2   v3 |
     |-------------------|
  1. | ab123d   12d      |
  2. |  efg34    f4      |
     +-------------------+

. 

Thank you for any help.
Best regards
Rose

----- Original Message -----
From: Nick Cox <[email protected]>
To: <[email protected]>
Subject: RE: RE: st: RE: problems on the string functions
Date: 2009-11-20 20:27:22

That is, 

gen v3 = v1 
qui forval i = 1/10 { 
capture replace v3 = subinstr(v3, substr(v2, `i', 1), "", 1) 
}

Nick 
[email protected] 


-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Nick Cox
Sent: 20 November 2009 09:45
To: [email protected]
Subject: RE: RE: st: RE: problems on the string functions

. help capture 

Nick 
[email protected] 

[email protected]

thank you for your help.
My another doubt is the length of variable v2 changes among
observations.
How to decide the first number in the -substr-?
If the length for certain observations is 2, substr(v2,4,1) will cause
missing value.

From: Nick Cox <[email protected]>

gen v3 = v1 
qui forval i = 1/10 { 
replace v3 = subinstr(v3, substr(v2, `i', 1), "", 1) 
} 

Nick 
[email protected] 

[email protected]

Thank you very much, Baum and Nick.
I understood the use of -subinstr-, -word- and -strpos- with your help.
Another problem is how to deal with it if the strings excluded from
another string variable is not consecutive.

for example,
clear
input str10 (v1 v2)
ab123d 12d
efg34 f4
end

I want to get v3 as followings
v3 
ab3
eg3

*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/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/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/



© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index