//替换拉丁文
str = str.replace(/[\u00A0-\u00FF]|[\u0100-\u017F]|[\u0180-\u024F]/g, '?');
//替换罗马数字到千位
// str = str.replace(/(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$/g, '?');
//罗马1-9个数位限制和整数位
str = str.replace(/[\u2160-\u2183]/g, '?');
//替换中文标点符号
str = str.replace(/[\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/g, '?');