Как мне написать сопоставитель пути, который сопоставляет любую часть оставшегося пути с регулярным выражением?
Я хотел бы написать сопоставитель пути, который сопоставляет любую из оставшихся частей пути с регулярным выражением, например,
path("myregex".r)
будет соответствовать, если у меня есть оставшиеся пути в форме:
/myregex
/foo/myregex
/foo/myregex/bar
/myregex/bar
Я посмотрел на код для сопоставителя регулярных выражений, кажется, что он смотрит только на первый сегмент, я мог бы настроить несколько маршрутов или написать собственный сопоставитель, но мне было интересно, есть ли уже лучшее решение для него?
Спасибо,
1 ответ
Решение
Как насчет этого?
path(Segments){segments=>
validate(segments.exists(_.matches("myregex")), "unmatched path"){
complete(s"matched: $segments")
}
}