我有三个文本字段说Field1,Field2,Field3,前两个文本框中的数据将反映在Field3上(在jquery中使用blur事件),同时反映任何单词后跟空格然后它将替换为分号See this
现在,我不想在Field 3上显示一些我希望将其过滤掉的单词。 因为我认为这样做但它不起作用(我想在两个领域中排除一些词然后反思但我试过一个)
$('[id^="titleField"]').blur(function(){
var result = '';
var count = 0;
var excludeData = [ "Action","is","this","was","why","when","not","a","an"];
$('[id^="titleField"]:eq(0)').each(function(){
var currentValue = $(this).val();
result = $(excludeData).find(currentValue).remove();
console.log(result);
});
$('#keyWordFilter').val(result);
});
预期结果:
考虑要排除的词:'for','of','a','an','it'。
领域1:'医学超心理学教科书'
领域2:'医学科学书'
第3场:'文字;书;医疗;超心理学;书;医学;科学'//你可以看到,排除
任何帮助将不胜感激。
答案 0 :(得分:0)
我最近一直试图取得类似的结果。我仍然是regexp的新手,但这就是我完成它的方式。
var f1 = ' Text Book of Medical Parapsychology ',
f2 = ' Book for Medical science ',
f3 = (f1+f2).match(/[^ ]+/g).join(';'),
exclude = ['for','of','a','an','it'];
exclude.forEach(function(word){
f3 = f3.replace( new RegExp( word+';', 'g' ), '' );
});
console.log(f3);
它需要一些刷新,但我认为它也适合你。干杯!