I haven't used this module before today so I can't offer any deep insight into the ways things have been set up.
I did wonder (exactly as you have) why it's set up like this.
I've just successfully tried the following:
my ($extracted,$remainder) = extract_bracketed($text,'()', ($text =~ m{ \A ( [^(]+ ) }msx)[0]);
You might choose to use something like that in all cases that might have an unknown prefix.
I haven't checked out the solution below (by Khen1950fx) - that may be preferable.
|