module Protocol::HTTP::URL

def self.split(name)

@returns [Array(String)] The parts of the key.
@parameter name [String] The key to split.

Split a key into parts, e.g. `a[b][c]` -> `["a", "b", "c"]`.
def self.split(name)
	name.scan(/([^\[]+)|(?:\[(.*?)\])/)&.tap do |parts|
		parts.flatten!
		parts.compact!
	end
end