0

在 Report Builder 3.0 中,我有一串以逗号分隔的值,例如“Value1、Value2、Value3、Value4”。我已经使用 Split() 来获得第一个和最后一个位置,但是我如何获得介于“Value1”和“Value4”之间的所有内容。我可以删除拆分函数创建的数组中的第一个和最后一个位置吗?我正在寻找的结果是“Value2,Value3”。

4

1 回答 1

0

我可以想到几种方法:

=Trim(Split(Fields!valueString.Value, ",")(1))
  & ", "
  & Trim(Split(Fields!valueString.Value, ",")(2))

与您已经在做的类似,只需将两个值重新连接在一起。Trim只是有助于避免任何空白问题。

=Trim(Mid(Fields!valueString.Value
 , InStr(Fields!valueString.Value, ",") + 1
 , InStrRev(Fields!valueString.Value, ",") - InStr(Fields!valueString.Value, ",") - 1))

这只是使用基于逗号位置的字符串操作。再次 Trim 用于清理空白。

当您的输入字符串为意外格式时,这些都不一定是完美的,因此根据您的数据,可能需要进行额外检查,但对于Value1, Value2, Value3, Value4这两个表达式都Value2, Value3按要求返回。

于 2013-04-05T10:41:42.653 回答