在各种风格的 Pick/UniBasic 等中是否有过字段函数的实现(第 311 页(,可以在多个字符的分隔符上运行?
我可以找到的文档实现规定一个字符作为分隔符参数,如果分隔符显示多个字符,则使用分隔符字符串的第一个字符而不是整个字符串作为分隔符。
我之所以问这个问题,是因为在我维护的商业和自定义软件中,我看到许多实例试图在字段语句中使用多字符分隔符。程序员似乎正在使用它,期望得到与当前不同的结果。
jBASE确实允许这样做。从现场文档:
此函数从字符串中返回一个多字符分隔的字段。它采用一般形式:
FIELD(string, delimiter, occurrence{, extractCount})
哪里:
string
指定要从中提取字段的字符串。delimiter
指定分隔动态数组中字段的一个或多个字符。occurrence
的计算结果应为值为 1 或更大的整数。它指定用作提取起点的分隔符。extractCount
是一个整数,用于指定要提取的字段数。如果省略,则假定一个。
此外,文档中的示例:
in_Value = "AAAA : BBjBASEBB : CCCCC"
CRT FIELD(in_Value , "jBASE", 1)
生产产量:
AAAA : BB
2020-08-13 更新(为 OpenQM 添加上下文(:
作为官方评论,因为我们同时维护jBASE和OpenQM,我觉得值得一提的是,OpenQM不允许FIELD()
使用多字符分隔符。