处理字符串中的单/双引号

Deal single/double quotes in string

本文关键字:字符串 处理      更新时间:2023-09-26

我定义了一个包含动态变量

的变量
var tempVar = "<%=varName%>";

表示varName输出Black/Blue Mirror + some special character with single and double quotes。在页面上,由于单/双引号,它打破了tempVar。

varName的实际字符串是Black/Blue Mirror ? /',.°º®#&*@+–!:()‘’”"'。这在我的项目中是允许的。

页面输出:var tempVar = "Black/Blue Mirror ? /',.°º®#&*@+–!:()‘’”"'";

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
[..]
var tempVar = <c:out value="${varName}"/>;

将双引号改为&quot;

如果在scriptlet中声明varName,则必须使其对表达式语言可见:

<%
    pageContext.setAttribute("varName", varName);
%>

您需要将双引号替换为'"

Javascript会把它们读成双引号。

var tempVar = "<%=varName.replaceAll("'"", "'''"")%>";