-1
我有一個是這樣的字符串:正則表達式:逃逸「/ \」/g的不工作
/* ACTUAL DATA */
\n\nsampleArr[0] = {
\n\t\tid: '28375023',
\n\t\ttelephoneNumber: 5558378402,
\n\t\tage: \" 4 \",
\n\t\tmessageID: '287592',
\n\t\tcommentID: '23845702',
\n\t\tfoobar: 'foobar' \n\t
};
我能夠刪除所有\ n \ t \ t使用正則表達式,但就是做不到處理它有「4」的年齡部分。
const input = String.raw`{
name: 'foo',
age: 12,
address: \"1212 Mason st. \",
zipcode: '12345',
state: \"CA\"
}`;
console.log(input.replace(/\\"/g, "'"));
我的主要目標是把它變成一個對象。然而,轉義字符「正在創造一些重大問題,我嘗試使用str.replace(/\\"/g, "'")
,好像它不匹配也沒有取代它,但在https://regex101.com上,它肯定是選擇了所有的。有什麼建議麼?
你確定字符串實際上包含這些字符嗎?如果我創建一個字符串* *看起來像這樣,那麼你的正則表達式工作:https://jsfiddle.net/jgkyvno4/(你的字符串從哪裏來?) – nnnnnn
@nnnnnn字符串來自哪裏不是問題。我被困在其他開發人員身邊。我意識到它不是一個有效的字符串文字。然而,當你用'替換'將會把它變成一個有效的字符串 因此,爲什麼我試圖用正則表達式把它變成一個有效的字符串 – DevBear15
假設你的樣本數據中的換行符實際上對應於' n'換行符,而反斜槓轉義雙引號是物理反斜槓,那麼你的替換應該工作,所以還有其他事情必須繼續進行。請參閱修改後的剪切。 – 2016-12-03 06:09:43