如下图所示,证券代码由数字和小数点“.”及两位字母组合而成,为了方便数据合并,需统一提取里面的数值部分
可以采用以下两种方式提取
一、字符串截取
通过观察数据,发现证券代码前6位数据都是数字,周3位为非数字
可以采用截取前6位字符的方式提取数字部分,代码如下:
gen code = substr(证券代码, 1, 6)
也可以通过以下方式将后3位字符替换为空,得到前6位数字
gen code = substr(证券代码, 1, length(证券代码) - 3)
运行结果截图
二、通过正则提取
使用 regexm() 函数匹配字符串变量 证券代码 中的数字部分。正则表达式 ([0-9]+) 表示匹配一个或多个数字。代码如下:
gen code = regexs(0) if regexm(证券代码, "([0-9]+)") ==1