- #!/usr/bin/env ruby
- messages = [
- "jotain cisco heippa hei",
- "aivan muuta juniper joooko",
- "arbua testiä myös",
- ]
- conds = {
- ios: /cisco/,
- jnpr: "juniper",
- aruba: /aruba/,
- }
- messages_parsed = messages.map do |message|
- solution = conds.reduce(nil) do |_, (_type, matcher)|
- found_index = message.index(matcher)
- break [matcher, message[found_index..-1]] if found_index
- end
- solution || [nil, nil]
- end
- puts messages_parsed