全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2055 5
2016-06-11
在复习70题时,第42题问道:
data work.one;
text='Australia, US, Denmark';
pos=find(Text,'US','i',5);
run;

请问这里面要找的us 是Australia里的, 还是那个大写US?? 我看crackman笔记时有点confuse。。 start position是5,是指从r开始往右数到Australia的最末再往回数到Australia的u吗? 一共12字符??

求解,谢谢!
二维码

扫码加我 拉你入群

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

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

全部回复
2016-6-12 03:17:44
首先回答你的问题,

请问这里面要找的us 是Australia里的, 还是那个大写US?? 我看crackman笔记时有点confuse。。 start position是5,是指从r开始往右数到Australia的最末再往回数到Australia的u吗? 一共12字符??

1.这里要找的us,就是字母us而已。但是我们找到的答案是大写的那个US,而非Australia里面那个。
2.这里的返回的意思,不是数到australia的最末再数回去。意思是,我们所找到的us的位置是哪个position而已。

个人理解如下,

data work.one;
text='Australia, US, Denmark';
pos=find(Text,'US','i',5);
run;

首先题目中我们要寻找的是“US".

"i"的意义是,大小写不计,所以我们找到US或者us均可

5的意义是,从第五个位置,也就是austalia里的r,开始往后数,第一次遇到us/US,就是我们要找的位置了。

那么Australia, US, Denmark从r开始数(r是5),a是6,l是7,i是8,a是9,“,”是10,空格是11,U是12.接着是S,所以完整的“US”我们找到了,那么U的位置,12,就是我们要找的位置了。

我记得鸡精里应该还有一个变形,你可以结合变形一起理解一下。
二维码

扫码加我 拉你入群

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

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

2016-6-13 23:54:58
谢谢详细分享! 我大概懂了。机经里的问题是
Text='US, Australia, Denmark';
Pos=find(Text,'US','i',5);

请问标点符号"," 和空格,都要各自算一个字符吗?如果是的话,'US, Australia, Denmark'里的A是第5个字符,紧接着U是6. 所以答案是6??

二维码

扫码加我 拉你入群

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

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

2016-6-16 03:47:10
wen7014 发表于 2016-6-13 23:54
谢谢详细分享! 我大概懂了。机经里的问题是
Text='US, Australia, Denmark';
Pos=find(Text,'US','i',5) ...
是的,“,”和空格都分别算作一个位置,所以如果题目如
Text='US, Australia, Denmark';
Pos=find(Text,'US','i',5)
那么答案应该是6.

我刚才又翻了一下base的鸡精,发现这道题目的变化方式很多。有的语句是'US-Australia, Denmark'这样的话答案就应该是5。考试的时候一定要小心哦~
二维码

扫码加我 拉你入群

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

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

2016-6-18 04:53:25
再次感谢!  你考advanced了吗
二维码

扫码加我 拉你入群

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

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

2016-6-22 05:37:33
wen7014 发表于 2016-6-18 04:53
再次感谢!  你考advanced了吗
抱歉最近刷贴频率比较低,考过ADV了哈~
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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