JavaScript正则表达式删除特殊字符并删除额外的空格,同时留下逗号

时间:2014-11-06 13:06:24

标签: javascript regex string

我试图做两件事来清理字符串,第一个是删除任何空格并用逗号分隔符替换它,第二个是删除任何非字母数字字符(除了逗号);我的第一部分功能齐全,但现在我无法弄清楚如何删除特殊字符:

$("#fancydiv").keyup(function(e) {
    var str = this.value.replace(/(\w)[\s,]+(\w?)/g, '$1,$2');
    if (str!=this.value) this.value = str;
});

2 个答案:

答案 0 :(得分:1)

'?no, special-characters!'.replace(/[^\w,]/g, '')
// => "no,specialcharacters"

[^\w,]将匹配不包含逗号的非字母,非数字,非下划线字符。

答案 1 :(得分:0)

试试这个:

var str = this.value.replace(/\s/g, ',').replace(/[^\w,]/g, '');