Many thanks for the pull request, @flisky. The line you fixed was indeed the line that caused problem. However, while the "g" flag is indeed needed to support nested arrays, that was not enough to produce the right output. Typically, the goal is to generate something like "map.index" from: "urn:uuid:a6d3a998-fb94-4acd-9986-d6d6a23e8eb3#/map/0/0/index" The first two regular expressions turn the input into: "map.0.0.index" Just adding the "g" flag to the final regular expression woud not really change anything in most cases, leading to: "map.0.index" The following "." should not have been part of the match, I added the right lookahead pattern. That seems to work fine in the forms I tried.