我使用 Scalate 进行模板化。通常它是这样的:
模板:
Hello {{name}}
参数:
`地图(“名称”->“彼得”)
结果:
Hello Peter
有没有办法将Parameter Map 作为 Result?
模板:
Hello {{name}}
要求:
Hello Peter
结果:
Map("name" -> "Peter")
我使用 Scalate 进行模板化。通常它是这样的:
模板:
Hello {{name}}
参数:
`地图(“名称”->“彼得”)
结果:
Hello Peter
有没有办法将Parameter Map 作为 Result?
模板:
Hello {{name}}
要求:
Hello Peter
结果:
Map("name" -> "Peter")
也许您正在寻找带有命名组的正则表达式?
//Regex with named groups
val pattern = """^Hello (?<firstname>\w+) (?<lastname>\w+)$""".r
val groups = List(
"firstname",
"lastname"
)
def matchAll(str: String): Option[Map[String, String]] = pattern
.findFirstMatchIn(str)
.map { matched =>
groups.map(name => name -> matched.group(name)).toMap
}
matchAll("Hello Joe Doe") //Some(Map(firstname -> Joe, lastname -> Doe))