如何修复我的代码以获取指定符号之前的字符,如 SSDT 中的 @?
How to fix my code to get the characters before specified symbol like @ in SSDT?
我正在使用 visual studio ssdt
(报告服务)。
我想从字符串中检索子字符串。
例如:在我的数据库中,我有 7720@449943AJFDJ,7777@9r49r49 or 8888888844@dj939393
我想检索从第一个符号到 @
的子字符串。
我用这个 code = CInt(Split(Fields!PRESENTATION_NAME.Value.ToString, "@")(0))
。我没有任何错误,但我的代码显示 38505 - this's not true.
我没有以 38505
开头的字符串。我期待我的代码显示 7720 , 7777 or 8888888844
。你知道怎么解决吗?
我上传文件看看我的意思。
谢谢
您似乎在尝试获取 @
之前的文本?如果是,InStr
函数会查找指定文本第一次出现的位置。然后可以将其用作 Left
函数的第二个参数,从中减去 1 以从最终结果中省略 @
。
Left(Fields!PRESENTATION_NAME.Value, InStr(Fields!PRESENTATION_NAME.Value, "@") - 1)
我正在使用 visual studio ssdt
(报告服务)。
我想从字符串中检索子字符串。
例如:在我的数据库中,我有 7720@449943AJFDJ,7777@9r49r49 or 8888888844@dj939393
我想检索从第一个符号到 @
的子字符串。
我用这个 code = CInt(Split(Fields!PRESENTATION_NAME.Value.ToString, "@")(0))
。我没有任何错误,但我的代码显示 38505 - this's not true.
我没有以 38505
开头的字符串。我期待我的代码显示 7720 , 7777 or 8888888844
。你知道怎么解决吗?
我上传文件看看我的意思。
谢谢
您似乎在尝试获取 @
之前的文本?如果是,InStr
函数会查找指定文本第一次出现的位置。然后可以将其用作 Left
函数的第二个参数,从中减去 1 以从最终结果中省略 @
。
Left(Fields!PRESENTATION_NAME.Value, InStr(Fields!PRESENTATION_NAME.Value, "@") - 1)