I started to write a sscanf %O, which I believe we have discussed previously, to match sprintf %O (and generic Pike constants).
So far, it understands integers, strings and character constants:
array_sscanf("17 "hepp" 'x' gurka","%O%O%O%s");
(3) Result: ({ /* 4 elements */ 17, "hepp", 120, " gurka" })