Actualmente estoy dando mis primeros pasos en Scala, así que estoy buscando las mejores prácticas para abordar los problemas comunes. A continuación está el código que no funciona pero describe lo que quiero hacer. ¿Podría recomendar el mejor enfoque para este problema?Scala string pattern matching best practice
def resolveDriver(url: String) = {
url match {
case url.startsWith("jdbc:mysql:") => "com.mysql.jdbc.Driver"
case url.startsWith("jdbc:postgresql:") => "org.postgresql.Driver"
case url.startsWith("jdbc:h2:") => "org.h2.Driver"
case url.startsWith("jdbc:hsqldb:") => "org.hsqldb.jdbcDriver"
case _ => throw new IllegalArgumentException
}
}
Véase también [esta cuestión] (http://stackoverflow.com/q/7586605/53013) otra manera de resolver este problema, si la parte coincidente pasa a ser todo el protocolo. –