|
发表于 2022-12-6 01:01:30
|
显示全部楼层
试一试带EX的
字符串切割命令:
;======================================================
命令 分割符号 分割内容 保存变量 (自动填写数字编号)
[@aaa]
#IF
#ACT
; 分隔字符串后,按顺序往S11及以后放
ExtractStringEx | aaa|bbb|ccc|ddd|000 S11
SendMsg 6 <$STR(S11)>,<$STR(S12)>,<$STR(S13)>,<$STR(S14)>,<$STR(S15)>
; 分隔字符串后,依次放自定义变量1,2,3,4及以后放
ExtractStringEx | aaa|bbb|ccc|ddd|000 S$拆分
SendMsg 4 <$STR(S$拆分1)>,<$STR(S$拆分2)>,<$STR(S$拆分3)>,<$STR(S$拆分4)>,<$STR(S$拆分5)>
;======================================================
特别说明:当参数是变量的不支持嵌套
这样不支持,如下:
GetDBItemFieldValue <$STR(S$奖励内容<$str(p1)>)> idx N$签到奖励<$str(p1)>
正确应该这样:
mov s1 N$签到奖励<$str(p1)>
GetDBItemFieldValue <$STR(S$奖励内容<$str(p1)>)> idx s1
得到的idx还是存到s1中,而不是N$签到奖励1中
正确可以参考以下示范:
#if
#act
MOV S$奖励内容 麻痹戒指,圣战戒指,裁决之杖,屠龙
ExtractStringEx , <$STR(S$奖励内容)> S$奖励内容
MOV P1 1
WHILE P1 < 3
mov s1 N$签到奖励<$str(p1)>
GetDBItemFieldValue <$STR(S$奖励内容<$str(p1)>)> idx s1
sendmsg 6 嵌套的变量获取<$STR(S$奖励内容<$str(p1)>)>IDX<$STR(s1)>
INC P1 1
ENDWHILE
|
|