a****g 发帖数: 8131 | 1 我有一些character
都有如下模式
abcde0
abcde5
abcde10
abcde1000
所以我打算用substr, 第一个位置参数是确定的
这种情况怎么解决比较好
thanks |
w*******9 发帖数: 1433 | |
a****g 发帖数: 8131 | 3 the length is the same since it was defined
【在 w*******9 的大作中提到】![](/moin_static193/solenoid/img/up.png) : Length function?
|
k*******a 发帖数: 772 | 4 把tailing 空格去掉
试试strip 或者trim
比如 length(trim(x)) |
P****D 发帖数: 11146 | 5 length function返回的是真实长度。你担心的那个是lengthm,返回declared长度。
http://www.notecolon.info/2011/06/note-length-functions-somethi
【在 a****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : the length is the same since it was defined
|
a****g 发帖数: 8131 | 6 thank you
will try it again. i tried it but did not work. I might have made some other
mistakes.
【在 P****D 的大作中提到】![](/moin_static193/solenoid/img/up.png) : length function返回的是真实长度。你担心的那个是lengthm,返回declared长度。 : http://www.notecolon.info/2011/06/note-length-functions-somethi
|
a****g 发帖数: 8131 | 7 thanks
tried this but not working
will check again
【在 k*******a 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 把tailing 空格去掉 : 试试strip 或者trim : 比如 length(trim(x))
|
P****D 发帖数: 11146 | 8 不客气。你肯定是哪里写错了。substr配合length,我天天用呢。
other
【在 a****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : thank you : will try it again. i tried it but did not work. I might have made some other : mistakes.
|
d********i 发帖数: 193 | 9 use perl regular expression |
d******9 发帖数: 404 | 10 Please google and try to use these functions:
Anydigit, anyalpha etc.
Bao Zi, please |
|
|
l******m 发帖数: 111 | 11 楼上正解
data _null_;
a='abcde0';
b='abcde5';
c='abcde10';
d='abcde1000';
a1=substr(a,anydigit(a),length(strip(a))-anydigit(a)+1);
b1=substr(b,anydigit(b),length(strip(b))-anydigit(b)+1);
c1=substr(c,anydigit(c),length(strip(c))-anydigit(c)+1);
d1=substr(d,anydigit(d),length(strip(d))-anydigit(d)+1);
put a= b= c= d= a1= b1= c1= d1=;
run; |
a***d 发帖数: 336 | 12 如果第一个位置参数是确定的直接用substr(yourstr,pos)就可以了吧。
【在 a****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我有一些character : 都有如下模式 : abcde0 : abcde5 : abcde10 : abcde1000 : 所以我打算用substr, 第一个位置参数是确定的 : 这种情况怎么解决比较好 : thanks
|
j*****7 发帖数: 4348 | 13 name_new = compress(name, 'abcde');
【在 a****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我有一些character : 都有如下模式 : abcde0 : abcde5 : abcde10 : abcde1000 : 所以我打算用substr, 第一个位置参数是确定的 : 这种情况怎么解决比较好 : thanks
|
S******y 发帖数: 1123 | 14 If you are interesting in doing that in Python RE -
>>> m = re.search(r'\d+$', 'abcde1000')
>>> int(m.group())
1000 |
A*******s 发帖数: 3942 | 15 second this.
just spend several hrs on learning some regex basics, lz would find out it
could save u a lot of efforts...
【在 d********i 的大作中提到】![](/moin_static193/solenoid/img/up.png) : use perl regular expression
|
I*****a 发帖数: 5425 | 16 substr(a, 6, nchar(a)) ?
【在 a****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我有一些character : 都有如下模式 : abcde0 : abcde5 : abcde10 : abcde1000 : 所以我打算用substr, 第一个位置参数是确定的 : 这种情况怎么解决比较好 : thanks
|
i******g 发帖数: 73 | 17 in SAS there is a reverse function I believe, ABCDE becomes EDCBA
reverse it, take the numbers, then reverse the results again, then get what
you need.
【在 a****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我有一些character : 都有如下模式 : abcde0 : abcde5 : abcde10 : abcde1000 : 所以我打算用substr, 第一个位置参数是确定的 : 这种情况怎么解决比较好 : thanks
|
k*z 发帖数: 4704 | 18 compress(var,'abcdefghijklmnopqrstuvwxyz',"a or e")
【在 a****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我有一些character : 都有如下模式 : abcde0 : abcde5 : abcde10 : abcde1000 : 所以我打算用substr, 第一个位置参数是确定的 : 这种情况怎么解决比较好 : thanks
|