Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript删除不粘词的特殊字符_Javascript_Jquery_Html - Fatal编程技术网

Javascript删除不粘词的特殊字符

Javascript删除不粘词的特殊字符,javascript,jquery,html,Javascript,Jquery,Html,我想删除所有与文字不符的特殊字符。例如: Lorem?!乱数假文。。多洛。。坐坐(阿梅特,) 会变成这样: 洛伦!乱数假文。。不要坐在我的座位上, 我使用这个regexreplace(/[^\w\s]/gi,”),但它将删除所有特殊字符。请帮帮我。。谢谢^ ^不幸的是,Javascript RegExp不支持lookahead/lookahead,但是您可以指定一个函数作为替换参数。下面的代码片段不能产生您需要的确切结果,也不是非常优化,但它可能为您指明了正确的方向: var text = 'L

我想删除所有与文字不符的特殊字符。例如:

Lorem?!乱数假文。。多洛。。坐坐(阿梅特,)

会变成这样:

洛伦!乱数假文。。不要坐在我的座位上,


我使用这个regex
replace(/[^\w\s]/gi,”)
,但它将删除所有特殊字符。请帮帮我。。谢谢^ ^

不幸的是,Javascript RegExp不支持lookahead/lookahead,但是您可以指定一个函数作为替换参数。下面的代码片段不能产生您需要的确切结果,也不是非常优化,但它可能为您指明了正确的方向:

var text = 'Lorem! ?! ipsum.. do\'lor .. sit-sit ( amet, )';
text.replace(/(.)([^\w])/g, function($0, $1, $2) {
    if (/\w/.test($1)) {
        return $1 + $2;
    }
    if (/[^\w\s]/.test($1)) {
        return /\s/.test($2) ? ' ' : '';
    }
    return $1;
});
替换函数将完整匹配作为第一个参数($0)以及所有其他匹配组($1,$2,…)获取。然后将函数的返回值用作实际替换值