在水晶报告中使用子串

时间:2010-06-07 02:43:32

标签: crystal-reports

我在水晶报告中有一个字段,其中包含以下数据:
'605 KL1 - Daniel Steve'
我怎样才能删除'605 KL1 - ',只留下'Daniel Steve'' - '之前的字符可能会有所不同,我希望该公式会自动搜索' - ,然后显示其后的所有内容。

3 个答案:

答案 0 :(得分:15)

MID可以在这里提供帮助:

MID(my_string, 11) // will print your string from character 11 ("D") forward

如果您需要动态显示,那么您可以将MIDINSTR结合使用(当然,只有当您的数据格式一致时,这才有效):

MID(my_string, (INSTR(my_string, "-") + 2))

答案 1 :(得分:4)

使用下标(x [y])Crystal语法

field_name ='605 KL1 - Daniel Steve'

syntaxis {field_name} [11 to 23]

Result = {field_name} [11至23] - >结果= 'Daniel Steve'

网站参考: IBM - Developing Crystal Report

答案 2 :(得分:2)

我想你也可以使用Split这样的功能

Split ({field_name},"-")[2]

但是如果你想使用split函数,你必须确保字符串中存在分隔符或添加一些条件以防止运行时错误。 Split函数返回一个数组,但它不以零开头。它的平均值[1]是第一个房间,[2]是第二个房间。