2013-04-09 98 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