scriptlet上的字符串操作

时间:2013-05-30 02:57:18

标签: java jsp

我来自PHP背景。我只是想做一个简单的字符串替换。

我只想将任何问号标记替换为“ - ”的其他字符。在那个“材料”字符串中。

如果我这样做

<%= Material %>

就像写出“BBBB ?? AC”一样简单。

我没有其他访问权限,只有一个.jsp文件。

还有另一种简单的方法可以替换字符串并将其打印出来吗?

2 个答案:

答案 0 :(得分:4)

假设您的scriptlet中的Material是一个String,那么只需执行

<%= Material.replaceAll("\\?", "-") %>

这基本上可以解决你的疑问。

尽管如此,如果可以,请停止使用scriptlet,这里可以更好地解释原因:How to avoid Java code in JSP files?

根据发布的链接,解决方案将使用EL和JSTL函数:

${fn:replace(Material, '?', '-')}

从您的评论中,由于Material不是字符串,因此您可以在应用替换之前调用toString方法。在scriptlet中:

<%= Material.toString().replaceAll("\\?", "-") %>

在EL / JSTL中,你需要一个临时变量来处理这个:

<c:set var="materialString">
     ${Material}
</c:set>
${fn:replace(materialString, '?', '-')}

答案 1 :(得分:1)

您可以使用<%= Material.replaceAll("\\?","=");%>

替换字符串