Copy only "mixartist" from TITLE to MIXARTIST?

Sorry if this is a simple request, but my files are in the format:

BPM - ENERGYLEVEL - INITIALKEY - ARTIST - TITLE [MIXARTIST]

and the only way I know to copy just the portion inside the [ ] area is to use TAG -> FILENAME (to make sure it's correct) and then FILENAME -> TAG (using %BPM% - %ENERGYLEVEL% - %INITIALKEY% - %ARTIST% - %TITLE% [%MIXARTIST%]). The latter action moves the mix artist to the MIXARTIST field, then I have to do another FILENAME -> TAG to get both fields populated correctly (using %BPM% - %ENERGYLEVEL% - %INITIALKEY% - %ARTIST% - %TITLE%).

Is there a way to create an action group to perform these operations all in one press of a button?

You could try an action of the type "Import tag fields"
Source: %_filename%==$regexp(%_filename%,'.*\[(.*?)\]',$1)
Target string: %BPM% - %ENERGYLEVEL% - %INITIALKEY% - %ARTIST% - %TITLE%==%MIXARTIST%

The principle behind it: you create a string from the filename itself and then add the extracted part in the `[]. The 2 == are only there to create a unique separator.
Please check the regular expression whether it works.

Alternatively, the 2 runs in the Converter could be:

  1. %BPM% - %ENERGYLEVEL% - %INITIALKEY% - %ARTIST% - %TITLE%
  2. %dummy%[%MIXARTIST%]

That first run didn't seem to work.

Which version did you try?
The action?
Or the converter?

Neevermind, I believe it is working, but there's the problem of files with no mixartist involved (no [ ] in the title or filename).

Yes - this is always the case: the pattern has to match the data source.
So I would recommend to filter for files that have square brackets in the filename.

I'm still quite the noob to this stuff, so I'll have to figure out a way to filter those, or add something like "if MIXARTIST is blank, then add "Original Mix" to it. That way it'll pull that into the brackets when formatting the FILENAME.

That said, I don't care if it shows [Original Mix] in the file name, but I don't want to see that in the TITLE field (it gets messy with all those in the DJ program I use). I can hide the MIXARTIST field if needed, but still search for it, if I want the works of a certain artist (artist or remixer).

See the documentation on filters:

try something like:
%_filename% HAS [
Then apply the converter that also gets the mixartist.
To find all the other files, those without anything in square brackets, try the filter
NOT %_filename% HAS [
If you want to get rid of a certain string like "Original Mix", then use an action of the type "Replace" that replaces that string with nothing.
I think it is fairly tricky to set exceptions for any string that might appear inside the brackets.