'net native national one banana noon'
找出包含n但不包含na的单词
正则知识点
*
匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等价于{0,}。
\b
匹配一个单词边界,也就是指单词和空格间的位置。例如, 'er\b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'。
\w
匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。
\W
匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。
var reg = /\b[\w]*n[\w]*\b/g; //\b 匹配一个单词边界 \w匹配包括下划线的任何单词字符
var result = "net native national one banana noon".match(reg);
var results = [];
for(var i=0; i<result.length;i++) {
if(result[i].indexOf('na') === -1)
results.push(result[i]);
}
console.log(results); // ["net", "one", "noon"]
var reg = /\b[\w]*n[\w]*\b/g;
var result = "net native national one banana noon".match(reg);
var results = result.filter(function(item,index){
return item.indexOf('na') === -1;
});
console.log(results); // ["net", "one", "noon"]