在RPGLE中,如何根据变量内容中的某个符号对字符串变量的内容进行细分。

问题描述 投票:0回答:1

假设在RPGLE中我有一个字符串变量,这个变量的内容是 "Hi;this;is;Kunal;Roy"。变量的内容是 "Hi;this;is;Kunal;Roy"。我如何根据符号来分割字符串的内容。

我想把Hi,this,is,Kunal,Roy这些值分开并存储在其他变量中。

谁能建议一个简单的方法,在rpgle中做到这一点。

ibm-midrange rpgle rpg
1个回答
3
投票

RPG有一个关于拆分字符串的RFE,你可以投票支持。

"新的内置函数%SPLIT": http:/www.ibm.comdeveloperworksrfeexecute?use_case=viewRfe&CR_ID=108424。


2
投票

有很多不同的方法来处理这个问题。一个解决方案是使用C函数strtok或strtok_r。你也可以编写自己的程序。

服务程序Linked List和Arraylist(来自rpgnextgen.com)都有一个拆分过程,它可以拆分一个字符串并将其部分存储在一个列表中。这两个服务程序的文档可以在下面找到 http:/iledocs.rpgnextgen.com。 .

**FREE

ctl-opt dftactgrp(*no) actgrp(*caller) bnddir('GLOBAL');

/include 'arraylist/arraylist_h.rpgle'

main();
*inlr = *on;


dcl-proc main;
  dcl-s list pointer;
  dcl-s text varchar(50);
  dcl-s part varchar(50);

  text = 'Hi;this;is;Kunal;Roy';
  list = arraylist_split(text);
  part = arraylist_getString(list : 0);
  dsply part;

  arraylist_dispose(list);
end-proc;

你可以通过软件包管理器轻松安装这些服务程序。iPKG 从回购 https:/repo.rpgnextgen.com。 .

© www.soinside.com 2019 - 2024. All rights reserved.