我想弄清楚一個正則表達式會從字符串中去掉一組自定義標記。舉例來說,如果我有串,正則表達式來刪除自定義標記
s = "{\n \"graph\": \"#! graph1 !#\",\n\"element\": \"#!
document.getElementById('x_axis1') !#\",\n\"orientation\": \"bottom\" \n}"
我所要的輸出是
"{\n \"graph\": graph1 ,\n\"element\": document.getElementById('x_axis1')
,\n\"orientation\": \"bottom\" \n}"
我嘗試下面的代碼
gsub('\"#!([^!].*)!#\"', "\\1", s)
但它僅刪除第一組標記。我真的很感激,如果任何人都可以指向我的正則表達式,將剝奪所有的自定義標記。
perl = TRUE似乎有幫助,但你的例子是無效的R語法(太多引號) – baptiste
這是將R對象轉換爲JSON的結果。我本質上是試圖傳遞一些參數作爲對象而不是字符串,這就是爲什麼標記。 – Ramnath
我想說的是,如果我複製並粘貼到控制檯中,它返回一個錯誤,因爲它不是一個有效的字符串('x_axis1'是問題)。如果我用double替換這些單引號,那麼你的正則表達式中的perl = TRUE似乎工作正常。 – baptiste