我有以下字串試圖用正則運算式洗掉干凈
{"background-color":"rgb(11,144,213);","transform":"translate(11px, 144px) transform: skew(11deg, 144deg);"}
試圖找到正確的正則運算式,以便最終輸出如下所示:
background-color:rgb(11,144,213);transform:translate(11px, 144px) transform: skew(11deg, 144deg);
到目前為止我得到了這個但不太正確
/[{[","|*"}]/g
我真的很糾結“,”
uj5u.com熱心網友回復:
這是一個非正則運算式解決方案
您可以將字串決議為一個物件,map通過條目并為每個條目構造字串,然后將結果陣列連接成一個字串。
const str = `{"background-color":"rgb(11,144,213);","transform":"translate(11px, 144px) transform: skew(11deg, 144deg);"}`
const res = Object.entries(JSON.parse(str)).map(e => `${e[0]}:${e[1]}`).join('')
console.log(res)
uj5u.com熱心網友回復:
不要為此使用正則運算式 - 它不是解決所有字串問題的靈丹妙藥,尤其是當您可以......
將 json 決議為 object。
迭代
Object.entries并將每個鍵和值添加到新字串中。
const json = '{"background-color":"rgb(11,144,213);","transform":"translate(11px, 144px) transform: skew(11deg, 144deg);"}';
const data = JSON.parse(json);
const entries = Object.entries(data);
let str = '';
for (const [key, value] of entries) {
str = `${key}:${value}`;
}
console.log(str);
uj5u.com熱心網友回復:
正則運算式--> /((\",\")|([{\"}]))/g
const original = {"background-color":"rgb(11,144,213);","transform":"translate(11px, 144px) transform: skew(11deg, 144deg);"};
const modified = JSON.stringify(original).replaceAll(/((\",\")|([{\"}]))/g, "");
console.log(modified);
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/360909.html
標籤:javascript 正则表达式 代替
