good question...
array_sscanf("ab^cd", "%s%[^]%s");
(1) Result: ({ /* 2 elements */ "a", "b^c" })
array_sscanf("ab^cd", "%2s%[^]%s");
(2) Result: ({ /* 2 elements */ "ab", "" })
array_sscanf("ab^cd", "%s%[^]%s");
(3) Result: ({ /* 2 elements */ "ab^cd", "" })
restarting pike...
array_sscanf("AB^CD", "%s%[^]%s");
(1) Result: ({ /* 2 elements */ "A", "B" })
array_sscanf("ab^cd", "%s%[^]%s");
(4) Result: ({ /* 2 elements */ "", "ab" })
array_sscanf("AB^CD", "%s%[^]s%s");
(11) Result: ({ /* 2 elements */ "AB^CD", "" })
array_sscanf("ab^CD", "%s%[^]s%s");
Error in sscanf format string.
array_sscanf("AB^CD", "%s%[^]s%s");
(12) Result: ({ /* 2 elements */ "AB^CD", "" })
array_sscanf("ab^CD", "%s%[^]s%s");
(13) Result: ({ /* 2 elements */ "", "ab" })
array_sscanf("ab^cd", "%s%[^]s%s");
(14) Result: ({ /* 2 elements */ "ab^cd", "" })
array_sscanf("ab^cd", "%s%[^]%s");
Error in sscanf format string.
something is being very confused here...
greetings, martin.