我遇到了一些問題,我目前正在將舊系統轉換爲新版本,在舊版本中,數據請求由Java applets管理,數據中的「-char」沒有問題。 現在,我從數據庫獲取數據並使用XSLT將其轉換爲JSON字符串,然後 - 使用原型函數.evalJSON() - 將字符串轉換爲對象。 該XSL然後結構是這樣的(實施例)中的數據:Javascript:Escape「from json字符串
{rowsets: [ { rows: [ { "ID":"xxx","OtherProperty":"yyy" } ] } ] }
其中在它自身是OK。 現在,當有數據庫中的某些數據含有「-characters的evalJSON()失敗,因爲它破壞了一般格式正確的JSON字符串,像這樣:
{rowsets: [ { rows: [ { "ID":"xxx","OtherProperty":"yyy "more" zzz" } ] } ] }
現在,我想要做什麼,以某種方式逃避'不想要的''「 - 無需爲服務器端創建某種存儲過程。 我試圖將自己的頭圍繞正則表達式,但是我在該領域並不是很有經驗,因此我很難搞清楚它。
如果它的任何幫助,這肯定是合法的字符序列是: [「:」]和[「」] 和有可能出現的,應該被轉義序列是: [\ s「],[」\ s],[「,],[」。](\ s表示一個空格)
各種幫助表示讚賞,即使它是一些SQL,更容易:)
在此先感謝!
您的轉換需要生成有效的JSON! – 2010-07-15 15:12:52
這是非常有效的JSON,只要從數據庫中獲取的數據集中沒有「-characters」字符,那麼在使用evalJSON()函數之前,這些字符就是我需要用一些正則表達式或其他東西來轉義的東西 – 2010-07-16 06:47:15