获取与JavaScript正则表达式替换的字符替换
问题描述:
var stringwithoutspecialCharacter = "testwordwithpunctiuation.".replace(/[^\w\s!?]/g, '');
问题目前更换所有非字母字符的是,我不知道会出现哪些特殊字符(需要删除)。不过,我需要能够访问删除的特殊字符后,我已经运行一些代码与没有特殊字符的单词。
例输入:
"test".
(temporary)
foo,
所需的输出:
['"','test','"',"."]
['(','temporary',')']
['foo',',']
这怎么可能用JavaScript实现的?
答
编辑:要获取有效和无效字符,请更改正则表达式 快速解决方案是定义一个数组以收集匹配项。 然后在一个函数传递到您的通话replace()
var matches = [];
var matcher = function(match, offset, string) {
matches.push(match);
return '';
}
var stringwithoutspecialCharacter = "testwordwithpunctiuation.".replace(/[^\w\s!?]|[\w\s!?]+/g, matcher);
console.log("Matches: " + matches);
您可以添加需要看到一些例子输入和相应的输出? – KevBot