我希望从表单中获取标签并将其保存到字符串数组中以进行循环。我希望标记中的空格,#号和逗号被删除。

这几乎可以正常工作,但是tagArraySplit[i].replace(/#/g, '');不会去除'#'。

var newTags = $( "#newTags" ).val();
console.log(newTags);
// regex split for one or more commas or spaces
// so that multiple consecutive spaces or a comma+space .. are not empty
var tagArraySplit = newTags.split(/[ ,]+/).filter(Boolean);
var tags = [];
for (i=0; i<tagArraySplit.length; i++)
{
    console.log(tagArraySplit[i]);
    tagArraySplit[i].trim;
    tagArraySplit[i].replace(/#/g, '');
    console.log('trimmed a tag');
    console.log(tagArraySplit[i]);
    tags.push(tagArraySplit[i]);
}
console.log(tags);

最佳答案

您需要存储String#replace方法的返回值:

tagArraySplit[i] = tagArraySplit[i].replace(/#/g, '');

09-07 16:25