当前,我在JavaScript中尝试使用此表达式/ [^ \ w \ s] / gi。但是,它不会删除_下划线。如何删除下划线?我要删除这些特殊字符 !“#$%&'()* +,-。/ :; <=>?@ [] ^ _`{|}〜
var text = reasonTxt.GetText(); var textFull = text.replace(/[^\w\s]/gi, '');
答案 0 :(得分:1)
_
被认为是文字字符。
因此您也需要对此取反。
var text = reasonTxt.GetText(); var textFull = text.replace(/[^\w\s]|_/gi, '');
let str = "vivek #$ asbc &12341236~!@#$%^& _ !#$%&'()*+,-./:;<=>?@[]^_`{|}~+_";
console.log(str.replace(/[^\w\s]|_/gi, ""));
答案 1 :(得分:0)
如果您只需要字母和数字
var text = reasonTxt.GetText(); var textFull = text.replace(/[^A-Za-z0-9]+/g, '');
如果您只想要字母
var text = reasonTxt.GetText(); var textFull = text.replace(/[^A-Za-z]+/g, '');
答案 2 :(得分:0)
您的正则表达式几乎正确,但是由于_
已经包含在\w
中(\w
与[a-zA-Z0-9_]
相同),因此您必须明确地检查{{1 }},并为此修改您的正则表达式,
_
将代码更改为此,
[^\w\s]|_