Skip to content

文本

文本包含

  • 语法:文本.是否包含('文本','关键词')
javascript
文本.是否包含('abc123', '123') // 结果 true
// 支持传入多个关键词,只要匹配任意一个,即返回 true
文本.是否包含('hello world', 'aaa', 'bbb', 'hello') // 结果 true

文本替换

  • 语法:文本.替换('原文本', '目标字符', '替换字符')

将原文本中的指定字符替换为新的字符,返回替换后的字符串

javascript
文本.替换('abcabc', 'a', 'A') // 结果: "AbcAbc"
文本.替换('你好,世界!', '世界', 'Minecraft') // 结果: "你好,Minecraft!"

文本分割

  • 语法:文本.分割('文本','分隔符','限制长度')

按分隔符分割字符串,返回集合(数组),等效于Java的String.split方法

javascript
文本.分割('测试-1', '-')[0] // 结果 测试
文本.分割('测试-a-b', '-', 2)[1] // 结果 a-b

数值解析

按照索引解析文本中的数值
语法文本.数值解析('文本','索引')
类型

类型说明示例
num普通数值100, 200
rb圆括号(+10)
sb方括号[+10]
cb大括号{+10}
ab角括号<+10>
ab角括号<+10>
bm书名号【+10】

索引格式:类型+序号 例:

  • num3 表示第三个普通数值
  • rb1 表示第一个圆括号内的数值
  • sb2 表示第二个方括号内的数值
javascript
文本.数值解析('攻击力: 100-200 (+50)', 'num1') // 返回:100
文本.数值解析('攻击力: 100-200 (+50)', 'num2') // 返回:200
文本.数值解析('攻击力: 100-200 (+50)', 'rb1')  // 返回:50

数值操作

按照指定的操作语句,对文本中的数值进行运算

语法文本.数值操作('文本','操作语句','操作语句2'...)

操作语句格式:索引 = 运算公式
其中,n 表示索引获取到的数值,常见的操作语句如下:

  • num1=n*1.25:将第一个普通数值 num1 乘以 1.25
  • rb1=n*1.25:将第一个圆括号内的数值 rb1 乘以 1.25
javascript
// 操作圆括号内数值 结果:攻击力: 100-200 (+62.5)
文本.数值操作('攻击力: 100-200 (+50)', 'rb1=n*1.25')
// 同时操作 num1,num2,rb1 结果:攻击力: 125-250 (+62.5)
文本.数值操作('攻击力: 100-200 (+50)', 'num1=n*1.25', 'num2=n*1.25', 'rb1=n*1.25')

随机文本

  • 语法:文本.随机('文本1','文本2','文本3'...)
javascript
文本.随机('111', '222', '333')

随机文本(权重)

  • 语法:文本.权重随机('文本1', 权重, '文本2', 权重, ...)
javascript
文本.权重随机('普通', 100, '优秀', 75, '精良', 50, '史诗', 20, '传说', 6)

随机多文本

  • 语法:随机多文本(map('文本', 权重, '文本', 权重, ...), 数量, '分隔符',允许重复)
javascript
// 结果示例:abbc     默认无分隔符,允许重复  
随机多文本(map('a', 10, 'b', 10, 'c', 10, 'd', 10, 'e', 10), 4)
// 结果示例:a-b-b-c  分隔符 -
随机多文本(map('a', 10, 'b', 10, 'c', 10, 'd', 10, 'e', 10), 4, '-')
// 结果示例: adce    无分隔符,不允许重复  
随机多文本(map('a', 10, 'b', 10, 'c', 10, 'd', 10, 'e', 10), 4, '', false)

文本统计

统计关键词在文本中出现的次数

  • 语法:文本.统计('内容','字符')
javascript
文本.统计('你是内内个内内内个内个内内', '内') // 返回 8

重复生成

  • 语法:文本.重复生成(文本,数量)
javascript
文本.重复生成('好', 5) // 结果 好好好好好