① JSP單引號和雙引號轉義的問題
給你個例子,自己看看!
<script>
document.write('ssss\'ssssss\"ssss')
</script>
轉: \"
② jsp中如何過濾非法字元
可以利用javascript驗證正則表達式的方式對非法字元做處理,同樣Java也可以利用正則表達式幫你過濾非法字元,最終還得更具你的具體需求來定。
③ jsp頁面,如何驗證textarea裡面的特殊字元,比如說引號,單引號,尖括弧,等等,急急急、、、
//去掉特殊符號的方法(調用在下面)
String.prototype.TextFilter=function(){
var pattern=new RegExp("[`~%!@#^=''?~!@#¥……&——『」「'?*()(),,。.、]"); //[]內輸入你要過濾的字元,這里是我的
var rs="";
for(var i=0;i<this.length;i++){
rs+=this.substr(i,1).replace(pattern,'');
}
return rs;
}
var uname=document.getElementById("uname1").value; //通過ID取到texteara的值
var txt=uname.TextFilter(); //調用上面的去字元方法
if(txt!=uname){
alert("您輸入的內容含有限定字元");
}
字元已經去了 怎麼判斷 要怎麼調用 你自己看著辦了(是在<script></script>里)
④ jsp中如何過濾sql里的單引號
放在""中是不會出錯的
⑤ jsp\java 如何編寫過濾器過濾特殊字元
package com.jing.common;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class IllegalCharacterFilter implements Filter {
private String[] characterParams = null;
private boolean OK=true;
public void init(FilterConfig config) throws ServletException {
// if(config.getInitParameter("characterParams").length()<1)
// OK=false;
// else
// this.characterParams = config.getInitParameter("characterParams").split(",");
System.out.println("初始化");
}
@SuppressWarnings("unchecked")
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest servletrequest = (HttpServletRequest) request;
HttpServletResponse servletresponse = (HttpServletResponse) response;
String param = "";
String paramValue = "";
//設置請求編碼格式
servletresponse.setContentType("text/html");
servletresponse.setCharacterEncoding("UTF-8");
servletrequest.setCharacterEncoding("UTF-8");
java.util.Enumeration params = request.getParameterNames();
//循環讀取參數
while (params.hasMoreElements()){
param = (String) params.nextElement(); //獲取請求中的參數
String[] values = servletrequest.getParameterValues(param);//獲得每個參數對應的值
for (int i = 0; i < values.length; i++) {
paramValue = values[i];
//轉換目標字元變成對象字元,可以多個。後期擴展特殊字元庫用於管理
paramValue = paramValue.replaceAll("'","");
paramValue = paramValue.replaceAll("@","");
paramValue = paramValue.replaceAll("胡錦濤","***");
//這里還可以增加,如領導人 自動轉義成****,可以從資料庫中讀取非法關鍵字。
values[i] = paramValue;
}
//把轉義後的參數重新放回request中
request.setAttribute(param, paramValue);
}
//繼續向下 執行請求,如果有其他過濾器則執行過濾器
arg2.doFilter(request, response);
}
public void destroy() {
// TODO Auto-generated method stub
}
}
⑥ jsp 單雙引號
單引號:
當雙引號出現在js的< >符號內時遵循如下規則:
1、 雙引號」 」要變為單引號』 』
2、 單引號中的單引號』 』用實體符號"代替
3、 單引號中的轉義字元 \ 用 \\ 代替
雙引號:
ASP中處在雙引號中的可以是任意的字元、字元串,HTML代碼。
比如
產生的頁面效果分別是:默認文字和加粗文字「cnbruce here」
1,一般文字顏色這樣寫:<font color="#0000ff">cnbruce</font>
2,response.write寫法是這樣的:response.write("輸入顯示的內容")
⑦ 在JSP中如何使用單引號和雙引號
單引號:
當雙引號出現在js的< >符號內時遵循如下規則:
1、 雙引號」 」要變為單引號』 』
2、 單引號中的單引號』 』用實體符號"代替
3、 單引號中的轉義字元 \ 用 \\ 代替
雙引號:
ASP中處在雙引號中的可以是任意的字元、字元串,HTML代碼。
比如
產生的頁面效果分別是:默認文字和加粗文字「cnbruce here」
1,一般文字顏色這樣寫:<font color="#0000ff">cnbruce</font>
2,response.write寫法是這樣的:response.write("輸入顯示的內容")
3,如果要將上面超鏈接代碼放到response.write中,有沒有發現write方法中的雙引號和color中的雙引號形成嵌套效果, 勢必形成response.write("<font color="#0000ff">cnbruce</font>")
4,調試結果不容樂觀,因為color的前引號和write的前引號形成匹配,內容為<font color=;同樣color的後引號也就和write的後引號匹配了,內容為:>cnbruce</font>。最終結果是:中間的 #0000ff 被孤單了。
5,所以為了結果正確,你可以將 #0000ff 當成字元串放在雙引號裡面,然後該字元串與前字元串<font color=和後字元串>cnbruce</font>中間的連接就採用&號
⑧ jsp 內容中帶單引號,sql出錯。如何解決
replace只能替換第一個符合條件的內容
replaceall可以替換全部符合條件的內容。
insert into Magazine_Feed (Detail) values ('1''234')
這樣插入的結果就是1'234
⑨ 請教jsp中 怎樣將 單引號 ' 替換成 \'
str = str.replace('\'','\\');
加分吧
str = str.replaceAll("\'","\\\\");
⑩ jsp\java如何編寫過濾器過濾特殊字元
正則表達式來校驗:過濾器就網路一大堆,怎麼寫正則表達式,也可以網路,不知你說的特殊字元是什麼字元,所以只能給方法