平常我们项目中存放类似于标签这种东西的时候,可能第一时间想到的就是beego,go,gin这种方式以,作为分隔符,但是这样是有弊端的,如果我想要通过模糊查询检索关键词go,这里我们会发现beego也会被检索到,那么我们有什么办法可以避免这种情况呢?
可以按照以下格式分割标签:
$beego#$go#$gin#
每一个标签插入数据库的时候都以$开头,#结尾,查询的时候我们也在传入的关键词前后加上$...#,这样我们就可以避免上述情况了,我们再想模糊查询检索关键词go,传下去的数据会被修改成$go#可以发现,这时候beego就不会被检索到了!!!!
例子:
// 处理前:bee beego gin go label = "$" + strings.Join(strings.Split(label, " "), "#$") + "#" // 处理后:$bee#$beego#$gin#$go#