清单
在 Progress 4GL 中有许多用于处理逗号(或其他字符)分隔列表的函数和方法。
NUM-ENTRIES 返回列表中的条目数。你可以选择指定分隔符,逗号是默认值
NUM-ENTRIES(字符串[,分隔符])
使用逗号,默认分隔符:
DEFINE VARIABLE cList AS CHARACTER NO-UNDO.
cList = "Goodbye,cruel,world!".
DISPLAY NUM-ENTRIES(cList). //3
使用另一个分隔符,semilcolon:
DEFINE VARIABLE cList AS CHARACTER NO-UNDO.
cList = "Goodbye;cruel;world!".
DISPLAY NUM-ENTRIES(cList, ";"). //3
ENTRY - function - 返回列表中的指定条目
通常起始位置是 1,而不是 0!
ENTRY(条目,列表[,分隔符])。
DEFINE VARIABLE cList AS CHARACTER NO-UNDO.
cList = "Goodbye,cruel,world!".
DISPLAY ENTRY(2, cList). //cruel
ENTRY - 方法 - 在列表中指定指定条目的值
ENTRY(条目,列表[,分隔符])=值
DEFINE VARIABLE cList AS CHARACTER NO-UNDO.
cList = "Goodbye,cruel,world!".
ENTRY(1, cList) = "Hello".
ENTRY(2, cList) = "nice".
MESSAGE REPLACE(cList, ",", " ") VIEW-AS ALERT-BOX. //Hello nice world!
LOOKUP - 检查特定条目的列表。返回它的条目。
如果列表中不存在该字符串,则查找将返回 0
LOOKUP(字符串,列表[,分隔符])
DEFINE VARIABLE cList AS CHARACTER NO-UNDO.
cList = "Hello,nice,world!".
MESSAGE LOOKUP("nice", cList) VIEW-AS ALERT-BOX. //2
MESSAGE LOOKUP("cruel", cList) VIEW-AS ALERT-BOX. //0