現(xiàn)給定一個(gè)原始字符串,例子: abcdefgh ,一個(gè)模板規(guī)則,例子: ab{{}}de{{}}h其中 {{}} 代表任意匹配,且一個(gè)模板內(nèi)可能存在0個(gè)或多個(gè){{}},要求編寫(xiě)一個(gè)函數(shù)先進(jìn)行模板匹配, 如果符合原始字符串符合模板規(guī)則,則進(jìn)行變量提取,例子的結(jié)果為 ["c", fg"]的數(shù)組function (str string, temp string) (bool, []string) {
// 先判斷 str是否符合temp的規(guī)則,不符合則返回false
// 比如 abcdefgh 就滿足 ab{{}}de{{}}h,但是 abcdefghi 就不滿足ab{{}}de{{}}h,因?yàn)槎嗔藗€(gè)字符i
// 如果符合則進(jìn)行變量提取
}我想了下,可以用正則,也可以用字符的split,對(duì)于一個(gè)變量符號(hào)都是很好解決的,但是對(duì)于多個(gè)變量符號(hào),全文匹配就會(huì)失敗,特前來(lái)請(qǐng)教
字符串模板與變量提取
慕標(biāo)琳琳
2018-09-02 08:56:06