RanSjStr » 历史记录 » 修订 3
修订 2 (yangdefeng, 2023-08-17 14:57) → 修订 3/4 (yangdefeng, 2023-08-17 15:04)
h4. _*%{color:green}ranSjStr%*_
等概率或者按权重随机获取分割字符串
标签:命令定义|ranSjStr>ranSjStr
*格式*
|命令名 |参数1 |参数2 |参数3 |参数4 |参数5 |
|ranSjStr |原字符串 |随机模式 |返回模式 |随机到的字符串保存变量 |剩余的字符串保存变量 |
*说明*
* 参数1:需要获取随机的字符串
格式
字符串1#权重1|字符串2#权重2|字符串3#权重3...
<notextile></notextile>
#代表某字符与其权重的分隔符
<notextile>|代表不同字符串的分隔符</notextile>
* 参数2:随机模式,0或1
0=系统权重随机,有几个字符串就是几份之一
1=按#位权重随机总权重为各项;位权重总和
* 参数3:返回模式0-3
0=参数4和参数5,显示#权重数字
1=参数4和参数5,不显示#权重数字
2=参数4,显示权重;参数5,不显示权重
3=参数4,不显示权重;参数5,显示权重
* 参数4:随机到的字符串保存变量
* 参数5:剩余的字符串保存变量
-
-
h4. *%{color:deepskyblue}特戒引擎脚本示例:%*
bq. [@main]
#if
#act
*{color:green}ranSjStr* 测试1#2000|测试2#1000|测试3#5000 1 3 s0 s1
%{color:lightGrey};总权重说明:总权重为2000+1000+5000=8000%
[[print]] 随机的字符串:<$str(s0)>
[[print]] 剩余字符串值:<$str(s1)>
%{color:lightGrey};假设分割出来的是:测试2#1000%
%{color:lightGrey};继续分割剩余的字符串 总权重为2000-1000+5000=7000%
*{color:green}ranSjStr* <$str(s1)> 1 3 s2 s3
[[print]] 随机的字符串:<$str(s2)>
[[print]] 剩余字符串值:<$str(s3)>
-
-
h4. *%{color:deepskyblue}特戒引擎脚本示例:%*
bq. [@main]
#if
#act
*{color:green}ranSjStr* 木剑#3|铁剑#3|短剑#3 0 1 s0 s1
[[print]] 随机的字符串:<$str(s0)>
[[print]] 剩余字符串值:<$str(s1)>
%{color:lightGrey};总权重说明:总权重为3(系统权重随机时,有几个字符串就是几份之一)%
[[print]] 本次随机到了<$str(s0)>