Skip to content

StringFind

在 s 字符串中查找 p 字符串。若查找成功,则返回 p 字符串在 s 字符串中出现的开始位置和结束位置;若匹配失败,则返回 nil。

Lua字符串的字节下标是从 1 开始的

业务属性

属性含义说明输入限定示例值
enable是否启用该控件,未启用时不编译是否编译选择值启用
name控件返回值命名控件输出值变量名常量StringFind
text与控件关联的文本设计页控件显示常量StringFind
input输入参数常量/流程变量#{str}
targetString查找字符串常量/流程变量#{findStr}
startIndex起始索引常量/流程变量2

起始索引 默认为 1,并且可以为负整数,当 init 为负数时,表示从 s 字符串的 string.len(s) + init + 1 索引处开始向后匹配字符串 p 。

控件的返回值是一个实体,该实体具有两个属性:

属性含义说明
start查找到的字符串的起始索引未匹配到字符串时为nil
finish查找到的字符串的结束索引未匹配到字符串时为nil

使用示例

输入常量

成功匹配字符串

参数输入:abc cba,查找字符串:ba

img_7.png

输出控件返回StringFind

img_9.pngimg_10.png

使用curl请求接口:

$ curl http://localhost:6636/api/stringFind
$ curl http://localhost:6636/api/stringFind

接口返回:

json
{
    "stringFind": {
        "start": 6,
        "finish": 7
    }
}
{
    "stringFind": {
        "start": 6,
        "finish": 7
    }
}

未匹配到字符串

将起始索引修改为:2,查找字符串:ab

img_8.png

使用curl请求接口:

$ curl http://localhost:6636/api/stringFind
$ curl http://localhost:6636/api/stringFind

接口返回:

json
{
    "stringFind": {}
}
{
    "stringFind": {}
}

输入变量

参数输入:#{body.param},查找字符串:#{body.tatget},起始索引:#{body.index}

img_11.png

使用curl请求接口:

$ curl http://localhost:6636/api/stringFind -d "{ \"param\": \"abc cba\", \"tatget\": \"ba\", \"index\": 4 }"
$ curl http://localhost:6636/api/stringFind -d "{ \"param\": \"abc cba\", \"tatget\": \"ba\", \"index\": 4 }"

接口返回:

json
{
    "stringFind": {
        "finish": 7,
        "start": 6
    }
}
{
    "stringFind": {
        "finish": 7,
        "start": 6
    }
}