import scala.util.matching.Regex
object Main extends App {
val s = "[Scala], ***C++ #Python (PHP) Java."
val result = """\b\p{L}+(?:-\p{L}+)*\b""".r.findAllIn(s)
val wordsList = result.toList
println(wordsList)
println("\n")
wordsList.foreach(println)
}
/*
run:
List(Scala, C, Python, PHP, Java)
Scala
C
Python
PHP
Java
*/