全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3317 20
2012-05-21
各位大家好,有个问题想要求助一下;
data a;         input x $20.;
cards;
01球场太远A
023球场石家庄1
0006球场北京2
;
run;
数据集大概这个样子,主要目的是,对字符串从右边进行提取,最后输出
球场太远A
球场石家庄1
球场北京2
后面的字符不是一样长的,
一时不知道怎么从右边对字符串进行提取,谢谢各位了!!

不好意思,问题问的有点误会,再澄清一下:
各位老大好,我的问题出现点误会;后面的字符不是一样多的
实际上我是有两列,A和B列是已经存在的内容,C列为目标列:
A           B                        C
01         01球场北京A               球场北京A
002       002球场石家庄1              球场石家庄1
054       054球场s              球场s
主要是这个目的!!
不知道如何能够达到这种效果!!


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-5-21 19:13:57
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-5-21 19:27:02
看我正则表达式
data a;        
input x $20.;
cards;
01球场A
023球场1
0006球场2
;
run;

data b;
set a;
a=prxchange('s/[0-9]+([\w]+)/$1',-1,x)
run;
proc print noobs;run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-5-21 19:28:23
tj0412ymy 发表于 2012-5-21 19:13
看我正则表达式
data a;        
input x $20.;
cards;
01球场A
023球场1
0006球场2
;
run;

data b;
set a;
a=prxchange('s/[0-9]+([\w]+)/$1',-1,x)
run;
proc print noobs;run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-5-22 09:12:21
pl172231 发表于 2012-5-21 19:28
看我正则表达式
data a;        
input x $20.;
实际上我是有两列,A和B列是已经存在的内容,C列为目标列:
A           B                        C
01         01球场A               球场A
002       002球场1              球场1
054       054球场s              球场s
主要是这个目的!!
不知道如何能够达到这种效果!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-5-22 09:21:00
乾坤神龙 发表于 2012-5-22 09:12
实际上我是有两列,A和B列是已经存在的内容,C列为目标列:
A           B                        C
...
楼主,在我看来,二楼的代码足够满足你的需求咯
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群