2017-03-09 107 views
0

我的字符串是一个包含单引号的HTML代码,我想用换码和单引号替换它。如何用JSP替换单引号


输入:<p style='padding-left:30px;'>
输出:<p style=\'padding-left:30px;'>

我试试这个,并试图逃跑单引号(像'\''但不工作):

<c:set var="htmlEvento" value="${fn:replace(filial.eventos, ''', '\\'')}"/> 

错误

引起:org.apache.jasper.JasperException:/loja/FilialLojaList.jsp (line:125,column:11)“$ {fn:replace(filial.eventos,''','\'') }” 包含无效表达(S):javax.el.E​​LException:解析失败 表达式[$ {FN:替换(filial.eventos, '' ' '\'')}]

+0

的可能的复制[如何使用JSTL/EL表达式内部单和双引号?](HTTP:// stacko verflow.com/questions/8898815/how-to-use-both-single-and-double-quotes-inside-jstl-el-expression)这不是说每一个重复,但这是足够接近,解决方案将是一样 ;) – AxelH

回答

0
<c:set var="input" value="<p style='padding-left:30px;'>"></c:set> 

<c:set var="output" value="${fn:replace(input, '\\'', '\\\\\\'')}"/> 
Input: <c:out value="${input }"></c:out> </br> 
Output: <c:out value="${ output}"></c:out> 

输出:

Input: <p style='padding-left:30px;'> 
Output:<p style=\'padding-left:30px;\'>