I am writing a script to move the "Featuring XYZ" over to the artist tag from the title, and I have the following.
$if($neql($strstr(%title%,'('Featuring ),0),%artist% $regexp(%title%,.*\((Featuring .*?)\).*,\1),%artist%)
This works, but it took me a while to get to it, the reason being that I did not initially include the escaped parenthesis before the "Featuring" bit. Originally I had the following:
$if($neql($strstr(%title%,'('Featuring ),0),%artist% $regexp(%title%,.*(Featuring .*?)\).*,\1),%artist%)
You'll notice the only difference between these is the missing "(" just prior to the "Featuring". Without this, I get the following error: "Found a closing ) with no corresponding opening parenthesis." The error message suggests that it is parsing this as if it were a part of the scripting function rather than an escaped part of the $regexp expression. The opening parenthesis should be unnecessary, since it is covered by the wildcard, but it is necessary to prevent this error.
Might want to check into this to save a lot of people frustration down the line.