前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[SAS]分割200字符,ktruncate递(套)归(娃)来帮忙(续集)

[SAS]分割200字符,ktruncate递(套)归(娃)来帮忙(续集)

作者头像
归海刀刀
发布2023-09-27 10:50:24
3650
发布2023-09-27 10:50:24
举报
文章被收录于专栏:归海刀刀
200

—天凉好个秋,风清不知愁,欲语还休。

01

后台收到位读者的私信:

可以考虑一下中文文本中存在空格的情况,如果分割部分存在空格,length是会直接忽略掉空格的长度的

本来是想用lengthc,发现有点问题,然后刀刀对程序进行了测试,发现ktruncate有类似trim的功能,尾部空格直接就没有了,然后程序会将空格放在在下一个变量的开头部分,目前ktruncate实现分割200字符大概就是这样的效果,如果其他读者有更好的建议欢迎私信,下面内容是对上次的程序进行了精简,以及测试过程,欢迎大家阅读和测试程序。

代码语言:javascript
复制
data test_data;
  dvterm_="將字串截斷為指定的長度 (位元組單位),而不會中斷多位元組字元。KTRUNCATE 函數會將完整長度的
  number(儲存為 double) 將字串截斷為指定的長 度 (位元    組 單位),而不會中斷多位元組字元。KTRUNCATE 函數會將完整長度的
  number (儲存為 double)截斷為較小的位元組數 (如 length 中所指定),並將截斷的位元組補上 0。截斷和後續擴充都會複製
  儲存小於完整長度的數目後加以讀取的效果。";output;
  dvterm_="A Recursive SAS macro is a special type of nested SAS macro. It is a very powerful programming technique to
  resolve recursion problems. For example, the Fibonacci numbers are most commonly defined recursively. Our first
  reaction to the problem is that it will require a complex iterative algorithm to solve. After we found that SAS macro
  supports the recursive algorithm, we wrote a few lines of code (please see Appendix) to solve the problem.";output;
run;
代码语言:javascript
复制
data test_data;
  set test_data;
  no=n;
run;
代码语言:javascript
复制
data ghdd;
  length QVAL_GHDD $200. QNAM_GHDD $8.;
  set test_data;
  by no;
  if first.no then nn=1;
  do while(dvterm_~="");
      QVAL_GHDD=ktruncate(dvterm_,1,200);
      dvterm_=substr(dvterm_,length(QVAL_GHDD)+1);
      len=length(QVAL_GHDD);
      QNAM_GHDD=ifc(nn-1=0,"DVTERM",cats("DVTERM",put(nn-1,best.)));
      nn=nn+1;
      output;
  end;
run;
proc transpose data=ghdd out=ghdd_t;
  by no;
  id QNAM_GHDD;
  var QVAL_GHDD;
run;

尊敬的读者,首先感谢您对本篇文章的关注和阅读。在此,本小编想要说明的是,以上所述内容都是经过笔者认真整理和撰写的,但限于个人能力和知识水平等因素,难免存在疏漏或错误之处。如有不当之处,敬请包涵并指正,本小编将虚心接受您的批评与建议,并严谨修正文章。再次感谢您对本篇文章的支持与厚爱。

以上就是今天的内容了,喜欢的话麻烦点个关注,非常感谢!!!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-09-14 07:18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 归海刀刀 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云服务器利旧
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档