如何从字符串中删除突出的字符?特别是在IE6中,我有这样的事情:
accentsTidy = function(s){
var r=s.toLowerCase();
r = r.replace(new RegExp(/\s/g),"");
r = r.replace(new RegExp(/[àáâãäå]/g),"a");
r = r.replace(new RegExp(/æ/g),"ae");
r = r.replace(new RegExp(/ç/g),"c");
r = r.replace(new RegExp(/[èéêë]/g),"e");
r = r.replace(new RegExp(/[ìíîï]/g),"i");
r = r.replace(new RegExp(/ñ/g),"n");
r = r.replace(new RegExp(/[òóôõö]/g),"o");
r = r.replace(new RegExp(/œ/g),"oe");
r = r.replace(new RegExp(/[ùúûü]/g),"u");
r = r.replace(new RegExp(/[ýÿ]/g),"y");
r = r.replace(new RegExp(/\W/g),"");
return r;
};
Run Code Online (Sandbox Code Playgroud)
但IE6让我烦恼,似乎它不喜欢我的正则表达式.
如何用javascript中的这些符号"aceeisuuz"替换这些符号"ąčęėįšųūž"?我知道我需要使用正则表达式,但我无法制作模式.
这就是我所拥有的
var string = $(this).val();
string = string.replace(/\s+/g, '-').toLowerCase();
string = string.replace(/[^a-zA-Z0-9-]/g,'_');
string = regExp something here...
$("#custom_url").val(string);
Run Code Online (Sandbox Code Playgroud)
更新:
在其他线程中找到此解决方案:
function convert_accented_characters(str){
var conversions = new Object();
conversions['ae'] = 'ä|æ|?';
conversions['oe'] = 'ö|œ';
conversions['ue'] = 'ü';
conversions['Ae'] = 'Ä';
conversions['Ue'] = 'Ü';
conversions['Oe'] = 'Ö';
conversions['A'] = 'À|Á|Â|Ã|Ä|Å|?|?|?|?|?';
conversions['a'] = 'à|á|â|ã|å|?|?|?|?|?|ª';
conversions['C'] = 'Ç|?|?|?|?';
conversions['c'] = 'ç|?|?|?|?';
conversions['D'] = 'Ð|?|?';
conversions['d'] = 'ð|?|?';
conversions['E'] = 'È|É|Ê|Ë|?|?|?|?|?';
conversions['e'] = 'è|é|ê|ë|?|?|?|?|?';
conversions['G'] = '?|?|?|?';
conversions['g'] = '?|?|?|?';
conversions['H'] = '?|?';
conversions['h'] …Run Code Online (Sandbox Code Playgroud) 给定一组单词,我需要将它们放在键入该单词首字母的哈希值中.我有单词= {},键为A..Z,数字和符号为0.我正在做类似的事情
var firstLetter = name.charAt(0);
firstLetter = firstLetter.toUpperCase();
if (firstLetter < "A" || firstLetter > "Z") {
firstLetter = "0";
}
if (words[firstLetter] === undefined) {
words[firstLetter] = [];
}
words[firstLetter].push(name);
Run Code Online (Sandbox Code Playgroud)
但这种情况因为迪斯特里斯和其他字符而失败,就像Ärzteversorgung这个词一样.那个词放在"0"数组中,我怎么能把它放在"A"数组中呢?