clear
set obs 3
gen v = "湖北省武汉市珞喻路1037号,430074"
replace v = "北京市海淀区,100080,学院路" if _n==2
replace v = "475001,河南省开封市顺河区" if _n==3
gen zip1 = ustrregexs(0) if ustrregexm(v,"([0-9]{6})")
gen zip2 = ustrregexs(1) if ustrregexm(v,"([0-9]{6})")
list
gen zip3 = ustrregexs(0) if ustrregexm(v,",([0-9]{6})")
gen zip4 = ustrregexs(1) if ustrregexm(v,",([0-9]{6})")
list v zip3 zip4
在以上例子中,zip1和zip4一样,都没有逗号,只有六位数字,因为ustrregexs(0) 返回的是正则表达式中所有内容, ustrregexs(1) 返回的是第n个小括号的内容,因此,zip3中含有逗号,,而zip4中没有。


雷达卡




京公网安备 11010802022788号







