gpt4 book ai didi

messagebroker - 用于将字符串拆分为多个值的 ESQL

转载 作者:行者123 更新时间:2023-12-03 03:45:46 26 4
gpt4 key购买 nike

以下输入 xml 字段需要按 6 个字符进行子字符串化,并且每 6 个字符应拆分并保存在输出的选项字段中。

Input: 
<feature>124414500045563879</feature>

output:
<option>124414</option>
<option>500045</option>
<option>563879</option>

IIB ESQL 中是否有任何标记器函数可以实现上述结果。

最佳答案

据我所知,ESQL 中没有 String Tokenizer 函数。

但是您可以使用以下过程作为基础来实现您的目标。该方法将 Delim 上的 S 拆分为 Env 中的数组(Environment.Split.Array[])并在重新填充之前删除Environment.Split。

就您而言,您不需要 Delim,您应该在子字符串部分使用固定长度。

CREATE PROCEDURE Split (IN S CHARACTER, IN Env REFERENCE, IN Delim CHARACTER) 
BEGIN
DECLARE P INTEGER;
DECLARE Idx INTEGER 1;

SET Env.Split = NULL;

REPEAT
SET P = POSITION(Delim IN S);
IF P = 0 THEN
SET Env.Split.Array[Idx] = S;
ELSE
SET Env.Split.Array[Idx] = LEFT(S, P - 1);
SET S = SUBSTRING(S FROM P + LENGTH(Delim));
SET Idx = Idx + 1;
END IF;
UNTIL P = 0
END REPEAT;
END;

来源:http://www.mqseries.net/phpBB2/viewtopic.php?p=97845&

关于messagebroker - 用于将字符串拆分为多个值的 ESQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45348397/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com