我正在使用 replaceAll(( 函数从我的字符串中删除 HTML iFrame 和 img 标签,但我收到一个 JSP 错误,我不确定为什么。我在正则表达式测试器上测试了这两个正则表达式,它们似乎都通过了我输入的任何<iframe></iframe>
或<img src="" >
标签。
<%
String content = (String) pageContext.getAttribute("content").toString().replaceAll("<iframe>[^"]*</iframe>", " ").replaceAll("<img[^>]*\>", " ");
pageContext.setAttribute("content", content);
%>
这是错误:
Invalid escape sequence (valid ones are b t n f r " ' \ )
我对正则表达式很陌生,所以我很难找到有效的解决方案。我哪里出错了?
根据我替换所有的经验,尝试使用:
replaceAll
在 JAVA/JSP 中的 8 个字符/符号中的任何一个都会触发错误。
* ( ) + { [ ?
而是使用
contains
在调用 replaceAll 之前处理/检查 8 个字符/符号,或使用下面资源中指定的正则表达式模式。
- https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#replaceAll(java.lang.String,%20java.lang.String(
- https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html#sum
干杯。