2017-03-09 104 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;\'>