I cannot think of a situation where I\'d want to use ??
in a regular expression, but maybe I\'m not thinking hard enough.
I would use it as an optimization if the optional part is usually absent.
Foo(PartUsuallyPresent)?Bar
Foo(PartUsuallyAbsent)??Bar
But I definitly lack a real-world example, too.
Maybe a delimiter-separated list, and you don't want to match any terminating delimiter.
^((?:[^,]+,??)+),?$
That would capture "a,b,c"
from "a,b,c,"
, where as the non-lazy variant would include the comma in the capture-group.