Assume a one-line string with multiple consecutive key-value pairs, separated by a space, but with space allowed also within values (not in keys), e.g.
key1=one two three key2=four key3=five six key4=seven eight nine ten
Correctly extracting the key-value pairs from above would produce the following mappings:
"key1", "one two"
"key2", "four"
"key3", "five six"
"key4", "seven eight nine ten"
where "keyX" can be any sequence of characters, excluding space.
Trying something simple, like
([^=]+=[^=]+)+
or similar variations is not adequate.
Is there a regex to fully handle such extraction, without any further string processing?