Tim "So, for my example, I was trying to match A + B = C + D, with the bits before and after the = in any order."
Your pmatch expression does not take into account the presence or absence of blank spaces between the various items.
I've tried your example in my REGEXP question type (example attached). The following expression accounts for permutations and accepts any combination of blank spaces. It yields 258 possibilities!
PS. Why don't we have a "code" format button in this forum toobar to insert code that won't be interpreted?