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