我有一个带有字段$ F {fupgrade_package_name}
的jasper报告因此,当我运行查询时,upgrade_package_name设置为http://www.something.com/file.exe
我想只在报告中显示file.exe而不是完整的URL。
这是怎么做到的?
由于
答案 0 :(得分:1)
您可以使用以下表达式:
<parameter name="url" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["http://www.something.com/file.exe"]]></defaultValueExpression>
</parameter>
<textField>
<reportElement x="122" y="28" width="100" height="20"/>
<textElement/>
<textFieldExpression>
<![CDATA[$P{url}.contains("/") ? $P{url}.split("/")[$P{url}.split("/").length-1] : $P{url}]]></textFieldExpression>
</textField>
结果将是:
的file.exe
对于 url = "just_file_wout_url.txt"
,结果将是:
just_file_wout_url.txt
对于您的情况,表达式为:
$F{fupgrade_package_name}.contains("/") ? $F{fupgrade_package_name}.split("/")[$F{fupgrade_package_name}.split("/").length-1] : $F{fupgrade_package_name}
答案 1 :(得分:0)
你可以像String一样处理$F{fupgrade_package_name}.split(regex)[0]
,你可以使用正则表达式。