【发布时间】:2009-01-13 17:02:10
【问题描述】:
我有一个水晶报表功能,它要求我删除以“-”开头的字符并删除“-”(破折号)后面的其余字符。
例如,我的订单号是 00000112345-C43-PJ。
如何将“-”右侧的所有内容都剪掉,得到结果为 00000112345?
我寻找了一个正则表达式和子字符串,但水晶似乎没有这些功能可用。
【问题讨论】:
标签: crystal-reports
我有一个水晶报表功能,它要求我删除以“-”开头的字符并删除“-”(破折号)后面的其余字符。
例如,我的订单号是 00000112345-C43-PJ。
如何将“-”右侧的所有内容都剪掉,得到结果为 00000112345?
我寻找了一个正则表达式和子字符串,但水晶似乎没有这些功能可用。
【问题讨论】:
标签: crystal-reports
我最近在这里添加了一个正则表达式库:- https://sourceforge.net/projects/cruflregex/files/
它有点小,但可能对某人有用。
【讨论】:
C:\Program Files\Business Objects\BusinessObjects Enterprise 12.0\win32_x86 目录中。
Crystal 可能没有正则表达式,但它肯定有所有基本的字符串函数
这样的事情应该为你做(未经测试):
Left({OrderNumber}, InStr({OrderNumber}, "-") - 1)
【讨论】:
这已经有一段时间没有出现在 Crystal 报表中了。我听说这可能是最新水晶报告中的一个功能(16?)。查看他们的网站并给他们打电话,他们不应该对售前问题收费。
您可以采取的另一种方法是手动处理该值并使用字符串和 isvalue 函数等对其进行验证。Messier,但它可能是一个备用选项。
【讨论】: