【问题标题】:crystal reports split string formula水晶报表拆分字符串公式
【发布时间】:2012-07-28 19:05:07
【问题描述】:

我试图只显示字符串字段的日期部分。 这是字符串的格式:STARTED:/ 03/23/1983 TIME:/ 03:12

我需要删除“STARTED:/”和“TIME:/03:12”,并且只显示字符串的日期部分:03/23/1983。我可以使用什么公式来做到这一点?

谢谢

【问题讨论】:

    标签: crystal-reports report formula


    【解决方案1】:

    我使用这个公式将全名字符串拆分为“姓氏”,其余字符串连接为“名字”

            Dim string_array() As String
            Dim i As Integer = 0
            Dim ContactName As String = dt(0)("ContactName").ToString()
            Dim contact_name As String
            contact_name = String.Empty
            If ContactName.Length = 0 Then
                contact_name = String.Empty
            Else
                string_array = Split(ContactName, " ")
                If string_array.Count > 1 Then
                    For i = 0 To string_array.Count - 2
                        If string_array(i) = String.Empty Then
                            Continue For
                        End If
                        contact_name = contact_name & " " & string_array(i)
                    Next
                Else
                    contact_name = ContactName
                End If
            End If
    

    【讨论】:

      【解决方案2】:

      Crystal Reports 帮助文件是您的朋友,应该是您解决有关内置函数和数据类型的简单问题的第一站。

      在 CR 中,字符串只是存储为字符数组,因此您可以像数组一样访问它们 - 通过索引。因此,在您的情况下,如果您始终具有相同的字符串格式(即相同数量的字符、前导零等),那么您可以执行以下操作:

      local stringvar mystr := {table.your_string}; //mystr:="STARTED:/ 03/23/1983 TIME:/ 03:12"
      mystr[11 to 20] //return "03/23/1983"

      或者,您可以使用 Mid() 字符串函数。

      【讨论】:

      • 感谢您的回复,因为我是 CR 的新手。所以这适用于任何记录。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-06
      相关资源
      最近更新 更多