删除括号SSRS中括起的任何括号或值

时间:2017-11-09 18:55:09

标签: reporting-services replace

我正在尝试删除SSRS中字符串字段中括号内的括号或值,这是最好的方法吗?我读到了关于替换功能,但不知道如何将它与多个值一起使用。

以下是我正在尝试做的一些例子:

Original string    Expected string
ERP(123)           ERP
TE(PO)ST           TEST
(123)string        string

2 个答案:

答案 0 :(得分:0)

假设您只有一组括号,那么这将有效。

=LEFT(Fields!test.Value, InStr(Fields!test.Value, "(") -1)
&
MID(Fields!test.Value, InStr(Fields!test.Value, ")") +1)

基本上我们将字符串的左侧部分放到第一个“(”位置减1 然后从第一个“)+1

开始连接字符串的其余部分

答案 1 :(得分:0)

为此我会使用一个可以在任何地方使用的功能而不是总是复制粘贴:

在这里,我们对要删除的部分执行export default{ firebase() { return{ cSites: db.ref('users/').orderByChild('url').equalTo(this.$route.params.uid) } } } ,然后我们执行Substring更改,没有空格,这样字符串将在一起(如果是原文用括号分隔)

Replace

这是粘贴在“代码”部分中,将按以下方式调用:

Public Function removeParenthesis (input As Object) As Object
    Try
        Dim FirstIndex As Integer = input.IndexOf("(")
        Dim SecondIndex As Integer = input.IndexOf(")") - FirstIndex + 1
        Dim Result As String = input.ToString().Replace(input.Substring(FirstIndex, SecondIndex), "")
        Return Result
    Catch ex As Exception
        Return ex
    End Try
End Function

该功能在Report>上实现。报告属性>代码>粘贴上面的功能

修改 请记住@Alan Schofield在答案中所说的话

  

假设你只有一套括号​​[...]。

我做了一点改变并且确认了是否实际上有一些括号,想法是循环直到一切都干净。

如果没有括号,那么它将返回原始值

Code.removeParenthesis(Fields!Textbox1.Value)