我经常发现自己想将多个匹配器/提取器聚集到一行中,但这似乎是不允许的。例如:
text match {
case regex1(a) | regex2(a) => a + "-"
}
(即使a
两个匹配器的类型相同)
所以我被迫像这样重构(当有几个这样的,所有处理不同的匹配,与内联响应混合时,它会变得丑陋)
text match {
case regex1(a) => op(a)
case regex2(a) => op(a)
}
def op(a: String) = a + "-"
有更清洁的方法吗?将来 Scala 会支持这一点吗?