【问题标题】:SSRS Reporting Services - splitting string at a certain wordSSRS Reporting Services - 在某个单词处拆分字符串
【发布时间】:2013-04-09 09:41:14
【问题描述】:

我一直在寻找一个我认为可能很简单的答案,并认为我在 stackoverflow 上找到了它:

SSRS Reporting Services - Bold Word in String

但遗憾的是它不起作用。我正在尝试拆分出现某个单词的字符串(在本例中为“Office”)而不是参数,并将所有内容都放在该单词的左侧。

例如其中字符串显示“London Main Office South 123”或“Birmingham Main Office North 123”,我只想要“London Main”或“Birmingham Main”,如果没有出现“Office”则为空白。

这是我尝试过的,但我在输出中收到 #Error:

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

【问题讨论】:

    标签: string service reporting-services reporting split


    【解决方案1】:

    试试这个表达式:

    =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 是否包含关键字“Office”。如果是这样,您需要拆分字符串并选择第一部分,否则,您需要保留原始字符串。 (你没有这样做)

    【讨论】:

    • 感谢您的快速回复,非常完美。
    • Split(Fields!myString.Value,"Office").GetValue(0) 不会一直有效,因为如果找不到值,Split 会返回一个包含 1 个元素的数组。
    猜你喜欢
    • 1970-01-01
    • 2017-11-02
    • 2018-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多