>>482
正規表現だけじゃ無理
マクロでこんな感じにすればいけるんじゃね?試してないけど

document.selection.SelectAll();
document.selection.Text = document.selection.Text.replace(/^;AA((?:\[[a-z]{2}\])*);AB((?:\[[a-z]{2}\])*)AC((?:\[[a-z]{2}\])*)$/gm, function(a, b, c, d) {
var e = (c + d).replace(/^\[|\]$/g, '').split(']['),
f = b.replace(/^\[|\]$/g, '').split('][').filter(function(g) {
for (var i = 0, l = e.length; i < l; i++) if (e[i] != g) return g;
}).join('][');
return ';AA['+ f + '];AB' + c + 'AC' + d;
});