Here's a better fix, since i became "victim" of the same problem a while ago:
[$trim($replace($meta(title)' ',' ep ',' EP ',' Ep ',' EP ',' cd ',' CD ',' Cd ',' CD ',' dj ',' DJ ',' Dj ',' DJ ',' Ii ',' II ',' Iii ',' III ',' Iv ',' IV ',' Vi ',' VI ',' Vii ',' VII ',' Viii ',' VIII ',' Ix ',' IX '))]
Replace $meta(title) with any field of your choice.
Explanation:
This avoids three issues. First, by making the whole string [conditional], the return will never be "?" and therefore the field will not be created if it doesn't exist. Second, by using $meta() it avoids fieldremappings. Third, by first adding a space to the end of the value and then trimming it away again, you avoid accidentally doing false matches. For example, ' ep' would also match ' episode', thus turning it into ' EPisode'. Since there is no way to define "end of value", i simply cheat by first adding a space to the end of the value, so that we can just match ' ep '. Then after the replacement i $trim the space away again.