我有一个包含三个字符串的字符串列表
List("1234:ruleName", "123456789012:::&&","12345::rulename")
我的合法格式为“ accountid:rulename”,其他格式均为非法。 我需要的是string(“ 1234:ruleName”),在我的情况下其他人是非法的,我该如何过滤出不匹配的条目?之后,将它们转换为此案例类白名单
object RuleWhitelisting {
case class ByName(name: String) extends RuleWhitelisting
}
case class Whitelist(accountId: String, ruleWhitelisting: RuleWhitelisting)
这是我目前正在做的事情,但是我认为如果我有非法数据,它将失败
list.map(whitelist => whitelist.split(":") match {
case Array(accountId, name) => Whitelist(accountId, ByName(name))
})