我懂了:
var stringToReplace = 'æøasdasd\89-asdasd sse';
var desired = stringToReplace.replace(/[^\w\s]/gi, '');
alert(desired);
我从另一个SO问题中找到了替换规则。
这工作正常,它给出了输出:
asdasd89asdasd sse
尽管我想设置其他规则:
保留
æøå
个字符保持
-
字符将空格/空格转换为
-
字符因此输出为:
æøåasdasd89-asdasd-sse
我知道我可以多加一行:
stringtoReplace.replace('','-');
完成我的3)目标-但我不知道该如何处理1和2),因为我不喜欢正则表达式?
最佳答案
这应该工作:
str = str.replace(/[^æøå\w -]+/g, '').replace(/ +/g, '-');
现场演示:http://ideone.com/d60qrX