Reporting services 从字符串中获取第一个字符的SSRS表达式

Reporting services 从字符串中获取第一个字符的SSRS表达式,reporting-services,ssrs-2008-r2,Reporting Services,Ssrs 2008 R2,我有一个字符串值为“First Middle Last”的字段,我想将该字符串的初始字符显示为“FML” 如何在ssrs表达式方面实现这一点?假设字段MyString始终有3个单词,下面将找到第一个、第二个和最后一个单词的第一个字符。诚然,这不适用于单词数超过或少于3个的情况,但如果您需要更多的技巧,希望可以帮助您开始 =Left(Fields!MyString.Value, 1) + " " + Left(Mid(Fields!MyString.Value, InStr(Fields!MyS

我有一个字符串值为
“First Middle Last”
的字段,我想将该字符串的初始字符显示为
“FML”


如何在ssrs表达式方面实现这一点?

假设字段
MyString
始终有3个单词,下面将找到第一个、第二个和最后一个单词的第一个字符。诚然,这不适用于单词数超过或少于3个的情况,但如果您需要更多的技巧,希望可以帮助您开始

=Left(Fields!MyString.Value, 1) + " " +
 Left(Mid(Fields!MyString.Value, InStr(Fields!MyString.Value, " ") + 1), 1) + " " +
 Left(Mid(Fields!MyString.Value, InStrRev(Fields!MyString.Value, " ") + 1), 1)
编辑

为了解决仅有两个单词的可能性(如下面的逗号所示),可以使用空格索引检查,以确保它们不相同,因此存在3个单词。这将使代码如下所示

=Left(Fields!MyString.Value, 1) + " " +
 Left(Mid(Fields!MyString.Value, InStr(Fields!MyString.Value, " ") + 1), 1) +
 iif(InStrRev(Fields!MyString.Value, " ") > InStr(Fields!MyString.Value, " "),
   " " + Left(Mid(Fields!MyString.Value, InStrRev(Fields!MyString.Value, " ") + 1), 1),
   "")

MyString
可以将两个字段设置为两个单词(我猜您所说的“两个字段”就是这个意思)