【问题标题】:Finding string that matches specific requirements查找符合特定要求的字符串
【发布时间】:2015-05-20 20:39:55
【问题描述】:

有一个函数应该返回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

【问题讨论】:

  • “Aa AA aAaAA”可能会起作用

标签: string algorithm go


【解决方案1】:

agent必须是3个“单词”,3个部分用空格隔开:

a := strings.Split(agent, " ")
if len(a) != 3 { return false }

第一个和第二个单词必须不区分大小写:

x := strings.EqualFold(b, c)

但不区分大小写:

y := b != strings.ToLower(c)

并且第 3 个单词必须包含前 2 个连接:

z := strings.Index(d, b+c) == 1 && len(d) == 5

从索引 1 开始(前置任何字符)并且必须包含 5 个字符(5 个字节)(后置有 5 个字符/字节)。

示例:

fmt.Println(accessible("A a _Aa__"))

打印:

true

【讨论】:

  • 谢谢,正是我要找的东西
猜你喜欢
  • 1970-01-01
  • 2019-03-17
  • 1970-01-01
  • 1970-01-01
  • 2012-12-29
  • 2016-01-18
  • 1970-01-01
  • 1970-01-01
  • 2013-04-14
相关资源
最近更新 更多