Dados e filterList dados,
scala> case class Customer(name: String, preference: Option[String])
defined class Customer
scala> Seq(Customer("prayagupd", Some("music")), Customer("stevenwilson", Some("soccer")))
res3: Seq[Customer] = List(Customer(prayagupd,Some(music)), Customer(stevenwilson,Some(soccer)))
scala> val filterPrefs = Seq("music", "reading")
filterPrefs: Seq[String] = List(music, reading)
Aplique o filtro,
scala> res3.filter(c => filterPrefs.exists(p => c.preference.contains(p)))
res16: Seq[Customer] = List(Customer(prayagupd,Some(music)))