0

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

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

如果我做

<%= Material %>

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

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

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

4

2 回答 2

4

假设这Material在你的 scriptlet 中是一个字符串,那么就做

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

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

不过,如果可以的话,请停止使用 scriptlet,原因在这里可以得到更好的解释:如何避免 JSP 文件中的 Java 代码?

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

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

根据您的评论,由于Material不是字符串,您可以toString在应用替换之前执行对方法的调用。在脚本中:

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

在 EL/JSTL 中,您将需要一个临时变量来处理此问题:

<c:set var="materialString">
     ${Material}
</c:set>
${fn:replace(materialString, '?', '-')}
于 2013-05-30T02:59:17.380 回答
1

您可以将字符串替换为<%= Material.replaceAll("\\?","=");%>

于 2013-05-30T03:00:36.017 回答