有一个函数应该返回true
:
func accessible(agent string) bool {
a := strings.Split(agent, " ")
if len(a) != 3 { return false }
b := a[0]
c := a[1]
d := a[2]
x := strings.EqualFold(b, c)
y := b != strings.ToLower(c)
z := strings.Index(d, b+c) == 1 && len(d) == 5
return x && y && z
}
但是我无法确定哪个string
输入符合这些要求。我错过了什么吗?
PS:这是来自gocode.io的任务#3
答案 0 :(得分:2)
agent
必须是3个“单词”,3个部分用空格分隔:
a := strings.Split(agent, " ")
if len(a) != 3 { return false }
第1个和第2个字必须符合不区分大小写:
x := strings.EqualFold(b, c)
但不区分大小写:
y := b != strings.ToLower(c)
第三个单词必须包含前两个连接:
z := strings.Index(d, b+c) == 1 && len(d) == 5
从索引1
开始(前置任意字符)并且必须包含5个字符(5个字节)(postpend有5个字符/字节)。
示例:强>
fmt.Println(accessible("A a _Aa__"))
<强>打印强>
true