2013-04-09 63 views
2

我一直在寻找一段时间来回答我认为可能相当容易的一个问题,并且认为我在以下计算机上找到了它:SSRS报告服务 - 将字符串拆分为某个单词

SSRS Reporting Services - Bold Word in String

但可悲的是它不工作。我试图将某个字出现的字符串(本例中为“Office”)而不是参数分开,并将所有字都放在该字的左侧。

E.g.如果字符串显示“伦敦总部南123”或“伯明翰总部北123”,我只想要'伦敦大都会'或'伯明翰主',如果'办公室'没有出现,那么空白。

下面是我尝试过,但我对输出得到#错误:

=IIF(Instr(Fields!myString.Value, "Office"), Left(Fields!myString.Value , Instr(Fields!myString.Value , "Office") - 1),"") 

回答

3

试试这个表达式:

=IIF(Instr(Fields!myString.Value, "Office"),  
     split(Fields!myString.Value,"Office").GetValue(0) 
     ,Fields!myString.Value) 

它只是意味着

=IIF(<condition>myString Contains Office, 
     <true> yes so split it and grab the first part, 
     <false> no it doesn't leave the string as it is 
) 

基本上,您需要检查Fields!myString.Value是否包含keyWord“Office”。如果是这样,你需要分割你的字符串并选择第一部分,否则,你需要保留原来的字符串。 (你没有这样做)

+0

感谢您的快速响应,这是完美的。 – Alex 2013-04-09 10:07:38

+1

'Split'(Fields!myString.Value,“Office”)。GetValue(0)'总是有效的,因为如果未找到该值,Split将返回一个包含1个元素的数组。 – 2013-04-09 19:21:52