filtrar se algum valor de propriedade estiver na lista de dados definidos

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)))