Можно ли разбить строку на лексемы, например,
"user@domain.com" match { case name :: "@" :: domain :: "." :: zone => doSmth(name, domain, zone) }
Другими словами, так же, как списки ...