I think this does everything:
Rename preset:
Alternatively, open the Rename dialog, click Edit Script, and paste this in:
function OnGetNewName(getNewNameData)
{
var name = getNewNameData.newname_stem_m;
var ext = getNewNameData.newname_ext_m;
var re = /(^.*\()([A-Za-z]{3} \d{1,2}, \d{4})(\).*$)/;
var dateStr = name.replace(re, "$2");
if (dateStr == name)
return true; // Skip this file.
var before = name.replace(re, "$1");
var after = name.replace(re, "$3");
var date = new Date(Date.parse(dateStr));
if (isNaN(date))
return true; // Skip this file.
var y = date.getFullYear();
var m = date.getMonth()+1;
var d = date.getDate();
dateStr = ZeroPad(y,4) + "-" + ZeroPad(m,2) + "-" + ZeroPad(d,2);
res = before + dateStr + after + ext;
return res;
}
function ZeroPad(s,c)
{
s = s + "";
while(s.length < c)
{
s = "0" + s;
}
return s;
}