SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 1032|回复: 7
打印 上一主题 下一主题

String变量的修改

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2006-5-24 11:09:45 | 只看该作者

String变量的修改

我有一个String变量,形式如下;
id
s23445a
s24563b
s21342g
s34212w
x3456872a
x4532233h

我想把他们全部换成如下的格式;
sa23445
sb24563
xa3456872

我可以通过substring 来实现,但是问题是这个变量以s开头的何以x开头的字节长度不同,请问怎么能够解决呢?谢谢
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2006-5-24 22:19:18 | 只看该作者

RE

id=compress(id,1234567890)||substr(id,2,length(id)-2);

or

id=compress(id,1234567890)||compress(id,compress(id,1234567890));
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2006-5-25 17:55:30 | 只看该作者

有问题

这个方法可以顺利转换
s23445a
s24563b
s21342g
但是
x3456872a
x4532233h
就能变成
x3456872
x4532233
不知道怎么回事,谢谢
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2006-5-26 03:28:02 | 只看该作者

RE

They should be the same, no matter the'x' or 's' which is at first position.

Please post your code you used.
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2006-5-28 11:14:36 | 只看该作者

是字节长度的问题

code 用的是你写的,直接粘贴的。
我试了,是字节长度的问题,如果x3456872a 和x4532233h 中间少一
个数字,就可以顺利转换成xa345687和xh453223。compress的命令对字节长度有要求么?谢谢
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
6#
 楼主| 发表于 2006-5-30 22:01:29 | 只看该作者

RE

字节长度 should be no more than 262 characters.
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
7#
 楼主| 发表于 2006-5-31 17:04:55 | 只看该作者

默认长度是8

data temp;
length id $20;
input id$;
cards;
s23445a
s24563b
s21342g
s34212w
x3456872a
x4532233h
;run;
data temp2;
set temp;
xx=compress(id,1234567890)||compress(id,compress(id,1234567890));
run;

This is OK!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
8#
 楼主| 发表于 2006-6-1 11:54:29 | 只看该作者

Thanks

Thank you very much
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2025-6-12 07:11 , Processed in 0.069061 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表