It seems like the best approach would be to eliminate the diacritics before applying your regular expression.
You might want to consider using this specific function that I stumbled upon here :
function removeAccentMarks(str)
{
var patterns=[
{pattern:/[\xC0-\xC6]/g, replacement:'A'},
{pattern:/[\xE0-\xE6]/g, replacement:'a'},
{pattern:/[\xC8-\xCB]/g, replacement:'E'},
{pattern:/[\xE8-\xEB]/g, replacement:'e'},
{pattern:/[\xCC-\xCF]/g, replacement:'I'},
{pattern:/[\xEC-\xEF]/g, replacement:'i'},
{pattern:/[\xD2-\xD6]/g, replacement:'O'},
{pattern:/[\xF2-\xF6]/g, replacement:'o'},
{pattern:/[\xD9-\xDC]/g, replacement:'U'},
{pattern:/[\xF9-\xFC]/g, replacement:'u'},
{pattern:/[\xD1]/g, replacement:'N'},
{pattern:/[\xF1]/g, replacement:'n'} ];
for(var j=0, length=patterns.length; j<length; j++)
str=str.replace(patterns[j].pattern, patterns[j].replacement);
return str;
}