str = %w|abcd efgh ijkl mnop|
paths = %w|/abcd /efgh /abcd/efgh /xxxx /xxxx/yyyy /xxxx/abcd|
paths.map { |path| path[%r|\A/(?:#{Regexp.union(str)})/?\z|] || '/unknown' }
#⇒ ["/abcd", "/efgh", "/unknown", "/unknown", "/unknown", "/unknown"]
Regexp - это: \A
для начала строки, за которым следует косая черта, за которым следует регулярное выражение, построенное как объединение возможностей, за которым может быть, возможно, одна косая черта, за которой следует конец строки.