跳到主要内容

如何使用代码块查询多个文本中关键词的重复次数?

场景描述

查询“文本框1”和“文本框2”中出现指定“关键字”的重复次数

image.png

思路逻辑

定义一个变量s:即文本框1+文本框2的内容

var s = qf_field.{文本框1$$62A99ADE$$}+qf_field.{文本框2$$62ABCD07$$};

定义一个变量word:即要查询的“关键字”

var word = qf_field.{关键字$$62ABCDE0$$}; 定义一个变量location:即查询的位置

var location = 0;

配置循环体

定义一个变量x,即重复次数

查询s中word的位置,从location位置开始查询:s.indexOf(word,location);查询不到会返回-1,查询得到会返回指定位置

当查询的到,返回不等于-1时,持续循环;查询不到,等于-1时,跳出循环

每次循环,x加1:x++;查询的位置,等于上一次的查询到的返回位置+1

for(var x = 0;s.indexOf(word,location) != -1;x++){

location = s.indexOf(word,location) + 1;

}

使用:qf_output,输出重复次数x

qf_output = {重复次数:x};

公式复制(qf_field.{..}为应用内字段,需手动调整)

var s = qf_field.{文本框1$$62A99ADE$$}+qf_field.{文本框2$$62ABCD07$$};
var word = qf_field.{关键字$$62ABCDE0$$};
var location = 0;
for(var x = 0;s.indexOf(word,location) != -1;x++){
location = s.indexOf(word,location) + 1;
}
qf_output = {重复次数:x};

设置图解

image.png

image.png

image.png

image.png

前往演示

https://qingflow.com/f/e6268b33