如何在birt报告中使用正则表达式隐藏表中的行

问题描述 投票:0回答:1

我试图使用 birt 报告中的正则表达式隐藏表中的一行,但我无法弄清楚。事实上,我正在测试一行是否等于包含“tourn”的表达式,但我不知道如何:

有什么想法吗

我已经测试了这一行[“type_collecte”] != new RegExp('/Tourn/')

report birt-deapi
1个回答
0
投票

一种解决方案是摆脱 JavaScript 并在报告中使用纯 Java。以下表达式可以用作您案例中的可见性条件:

result = "";
tc = row["type_collecte"];
try{
    if (tc != null) {
        myJavaString = new java.lang.String(tc);
        result = myJavaString.matches("(.*)Tourn(.*)");
    }    
} catch(error) {}
result;

未使用 null 进行测试。我用这些例子检查了它:

123123
x-Tourn-x
y-tourn-y
zzzzzz

我的 BIRT 报表设计器 4.13.0 为这些示例隐藏了带有 x-Tourn-x 的行:

123123
y-tourn-y
zzzzzz
© www.soinside.com 2019 - 2024. All rights reserved.