What I needed was either a str_replace or regex to replace the text between a set of parenthesis within a string where the parenthesis could occur more than once and the content of that text would be unknown.
There are several answers - some of which are marked as duplicates, yet none of them actually answer this simple question, so after searching for nearly an hour, and finding nothing, I decided to ask the question. And since I eventually figured it out using the preg_replace tool at functions-online, I figured I would post it and maybe someone else can come up with a better solution or possibly present a str_replace variant for php.
So here is what I came up with - that works - but please feel free to suggest better options.
//test string
$string = 'Fearless, Immunity (Cursed), Summoned (Spellcaster), Tactician, Tough/4';
$repVal = '(X)';
$count = null;
$returnValue = preg_replace('~\\([^\\)]*\\)~', $repVal, $string, -1, $count);
$returnValue = preg_replace('~(\\/)(\\d+)~', '/#', $string, -1, $count);
After running both preg_replace statements, the returned string will equal:
'Fearless, Immunity (X), Summoned (X), Tactician, Tough/#, Undead'
PS: I also needed to replace the /4 or any other /x strings with /#, so I included that statement as well.