两个有限点之间的 COBOL 子串
COBOL substring between two finite points
我知道 string_variable(start:length)
可用于在给定起点和子字符串长度的情况下获取字符串的子字符串,但是,我发现我经常需要在 [=18 之间获取子字符串=] 和 'end' 点。
虽然我知道我总是可以这样做:
SUBTRACT start FROM end GIVING len
string(start:len)
当我编写经常使用此功能的程序时,每次都必须这样做似乎很麻烦。是否有 quicker/built-in 方法可以实现此目的?
怎么样?
move str (start-pos : end-pos - start-pos + 1) to ...
您可以从最后一个减去第一个,但您需要加 1 以获得正确的长度。
STRING
是语句名,START
也是,END
是保留的。 LENGTH
是一个函数名。我避免在任何看起来像代码的地方使用它们。
我知道 string_variable(start:length)
可用于在给定起点和子字符串长度的情况下获取字符串的子字符串,但是,我发现我经常需要在 [=18 之间获取子字符串=] 和 'end' 点。
虽然我知道我总是可以这样做:
SUBTRACT start FROM end GIVING len
string(start:len)
当我编写经常使用此功能的程序时,每次都必须这样做似乎很麻烦。是否有 quicker/built-in 方法可以实现此目的?
怎么样?
move str (start-pos : end-pos - start-pos + 1) to ...
您可以从最后一个减去第一个,但您需要加 1 以获得正确的长度。
STRING
是语句名,START
也是,END
是保留的。 LENGTH
是一个函数名。我避免在任何看起来像代码的地方使用它们。