Groovy:检查文本是否多次包含字符串

ogsagwnx  于 2023-05-16  发布在  其他
关注(0)|答案(4)|浏览(176)

我想检查单词"test"是否在日志中出现超过1次。下面的代码只是检查单词'test'在字符串中出现的次数是否超过0次。(它只检查日志是否包含该单词)。

if (env.logs.contains('test')) {
      xxx
}

我必须做什么修改才能让这部分代码检查单词test是否出现多次?

oogrdqng

oogrdqng1#

contains()方法简单地做到了这一点:

public boolean contains(CharSequence s) {
    return indexOf(s.toString()) > -1;
}

因此,您可以这样做来检查该值是否出现多次:

int index = env.logs.indexOf("test");
if ((index > -1) && (env.logs.indexOf("test", index + 1) > -1) ) {
        // do something here
}
aor9mmx1

aor9mmx12#

使用matcher:

def match = (env.logs =~ /test/)
assert match.size() > 1
jum4pzuy

jum4pzuy3#

简单地尝试:

if (env.logs.count('test') > 2) {
...
}
pgx2nnw8

pgx2nnw84#

当if条件为true时递增值

int testCount=0;
 if (env.logs.contains('test')) {
  testCount++;
 }

并检查条件
如果testCount>0,那么写一些你想要的东西。

相关问题