go模板提供了一个eq比较运算符,例如{{if eq .Var"val" }}。
在这种情况下,进行不区分大小写的字符串比较的最佳方法是什么?因此,对于var为"val"、"val"或"val"的情况,上述情况是正确的。
您可以简单地创建另一个小写变量s1 := strings.ToLower(s),并将其与模板与小写字符串进行比较。
可以使用template.Funcs()注册要在模板中使用的自定义函数。
有一个strings.EqualFold()函数执行字符串的不区分大小写比较。所以只要注册该函数,就可以从模板调用它:
结果:
在运动场上试试。