program define leadchar *! v 1.1 gmh 10apr2005 syntax varname, Digits(integer) [LEAD(string)] [TOSTRING REPLACE ] if "`lead'"=="" { local lead "0" } local length= length("`lead'") if `length'~= 1 { di in red "Leading character should be one character." exit } capture confirm string variable `varlist' if _rc==7 { if "`tostring'"~="" { tostring `varlist', `replace' } else { di in ye "`varlist' " in gr "is not a string variable. Include option " in ye "tostring" in gr " to convert to string." } } qui replace `varlist'=trim(`varlist') local i = 1 while `i' <= `digits' { qui replace `varlist' = "`lead'" + `varlist' if length(`varlist')<`digits' local ++i } end