具有正则表达式匹配的 SSRS 函数

SSRS Function with Regex Match

在报告中,我试图过滤值与十位数字和零个或多个连字符的模式不匹配的行。

因为我需要其他表中的数据,所以我认为最好的方法是使用 tablix 过滤器。在表达式中使用正则表达式匹配字段:^([\d]{10})-*$ 并将其设置为等于 false.

我正在尝试这个表达式:

=System.Text.RegularExpressions.Regex.IsMatch(Fields!Number.Value, "^([\d]{10})-*$")

但是,它 returns 过滤器无法评估的错误。 有什么解决办法吗?

或者我可以取左边的 10 个字符并测试它们是否为整数,但我想不出一个简单干净的方法来测试连字符,而更喜欢正则表达式。

表达式在重启后工作正常:

=System.Text.RegularExpressions.Regex.IsMatch(Fields!Number.Value, "^([\d]{10})-*$")