access中過濾特殊字元「 」

2021-08-15 19:49:25 字數 880 閱讀 7014

今匯入資料庫的時候發現出錯了,資料庫訪問失敗,以為是程式的問題最後發現是採集回來的資料有問題,主要是access裡的特殊字字元「[」在搞鬼。

原來資料裡面有個單獨的「[」而沒有「]」(不包含引號),於是我修改一下把缺少]加上就能匯入了,原來是採集的資料少了個]。

我用access開啟資料庫想把資料名稱裡面的[ 和 ] 全都去掉,沒想到問題又來啦。查詢替換]沒問題很快搞定,結果這個]竟然不能查詢,說「此模式字串無效」

後來幸好網上找到乙個網友的部落格裡有提此問題,是access的特殊字條,松了口氣問題搞定。

今天在生成乙個新站的靜態頁面時系統報錯, 看了一下, 問題出在查詢時的"like '[馬'"這一句上了, 到資料庫裡把那一條中的"["刪除就沒問題了, 但保險起見, 又從access中用"過濾"功能看了一下, 確實沒有包含"["的記錄了, 就重新生成.

不想生成中又發現問題了, 還是同樣的問題: "["符號! 明明沒有了的呀, 定位到出錯的那條記錄, 竟然真有!!! 新建一條查詢, 查了一下, 竟然查不到那條記錄@!$$#%%

在office 2007的help中搜了半天, 終於發現: 原來, "["符號在access的過濾或查詢中是作為特殊字元出現的, 用法有點象簡單的正規表示式, 象"[1-9]"就是表示1-9之間的數字, 所以遇到查詢或過濾中出現"["時access都會把它當作不完整的區間表示式而報錯了.

試了一下, 發現在access中用過濾或查詢找包含"["的記錄時不能用"like '['"作為條件, 而應該用"like '['", 即用一對中括號""把這半個中括號"["括起來才行。

ps:之後又研究了下萬用字元的應用,要查詢很多資料中的很多用中括號包含的資料並刪除掉,比如:電影名[全集] 、電影名[高畫質] 、電影名[完結]。要把最後面的都刪除掉,只需要在access裡查詢[*]並替換成空就行了。

過濾特殊字元

過濾特殊字元 public static string encoding string src 利用反射呼叫乙個繼承層次上的函式族,比如安裝程式,有安裝資料庫的,安裝檔案系統的等,命名均已 install 開始,你就可以將引數part設為 install src是其實類例項,root是終止父類 pu...

特殊字元過濾

1.過濾不安全的字串 public static string filtesqlstr string str 2.region 過濾 sql 語句字串中的注入指令碼 過濾 sql 語句字串中的注入指令碼 傳入的字串 過濾後的字串 public static string sqlfilter stri...

ASP特殊字元過濾

chkinvaildword true invaildword split invaildwords,inwords lcase trim words for i lbound invaildword to ubound invaildword if instr inwords,invaildwor...