模板字串格式化

2021-10-20 03:11:51 字數 935 閱讀 5791

給定乙個模板和乙個物件,利用物件中的資料渲染模板,並返回最終結果。

let obj =

, company:

'雲浪'

}let str =

'你好,我們公司是},我們屬於}業務線,我們在招聘各種方向的人才,包括}、}等。'

;

個人解決方案:

let str =

'你好,我們公司是},我們屬於}業務線,我們在招聘各種方向的人才,包括}、}等。'

;// 轉換group.jobs[0]為group.jobs.0的形式

// 轉行group["jobs"][1]為group.jobs.1的形式

str = str.

replace

(/\["?/g

,'.').

replace

(/\"?]/g,''

)const result = str.

replace

(/\\}/

,function

(substring, key)

} company

return obj[key];}

).replace

(/\\}/g

,function

(substring, key)

} group.name

// } group.jobs.0

const keys = key.

split

('.');

let res = obj;

for(

let k of keys)

return res;})

;console.

log(result)

;

借助lodash.get應該也可以

字串格式化

sprintf snprintf snprintf std stringstream std strstream boost lexical cast boost format cstring format 1 sprintf 使用 sprintf 不安全,輕則破壞資料的準確性,重則程式崩潰。請看下...

格式化字串

通常在使用字串的時候,會對字串進行格式化,然後輸出或呼叫 一般我們使用替換標記對字串進行格式化 string str1 string.format add is 1,2,3 而且在c 中的替換標記可以以任意順序和次數出現在格式化字串中,但替換值是按順序排的,而且替換標記不能超出索引範圍 string...

字串格式化

例如 string s hello map.put target world string res format s,map 有什麼用呢?比如在some.properties中配置模板字串,但是如果用 這種方式,在配置了spring讀取properties注入變數的時候,這個變數就找不到會報錯。這個...