Используйте одну из существующих Json библиотек синтаксического анализа.
Вот пример с upickle:
import upickle.default._
val res = read[List[String]](""" [ "Stack", "Overflow", "flow"] """)
println(res) //List(Stack, Overflow, flow)
У каждого из решений Regexp / split есть свои проблемы (см. В скрипте ниже).
fiddle: https://scalafiddle.io/sf/sH8KPLG/4
----------------------------------------
FOR INPUT: [ "Stack", "Overflow", "flow"]
----------------------------------------
scalway : (ok) List(Stack, Overflow, flow)
Tim : (ok) List(Stack, Overflow, flow)
jwvh_2 : (ok) List(Stack, Overflow, flow)
jwvh_1 : (!!) List("Stack", "Overflow", "flow")
----------------------------------------
FOR INPUT: [ "Sta ck", "Overflow+", " flow"]
----------------------------------------
scalway : (ok) List(Sta ck, Overflow+, flow)
Tim : (!!) List(Sta, ck, Overflow, flow)
jwvh_2 : (ok) List(Sta ck, Overflow+, flow)
jwvh_1 : (!!) List("Sta ck", "Overflow+", " flow")
----------------------------------------
FOR INPUT: [ "Stack", "Overf\"low", "flow"]
----------------------------------------
scalway : (ok) List(Stack, Overf"low, flow)
Tim : (!!) List(Stack, Overf, low, flow)
jwvh_2 : (!!) List(Stack, Overf\, , )
jwvh_1 : (!!) List("Stack", "Overf\", ", ")