我来自 PHP 背景。我只想做一个简单的字符串替换。
我只想用'-'的其他字符替换任何问号。在那个“材料”字符串中。
如果我做
<%= Material %>
它会像写出“BBBB??AC”一样简单。
我没有其他访问权限,只有一个 .jsp 文件。
还有另一种简单的方法可以进行字符串替换并打印出来吗?
假设这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, '?', '-')}
您可以将字符串替换为<%= Material.replaceAll("\\?","=");%>