我一直使用javascript使用以下代码从RSS Feed中删除或替换某些单词:
document.body.innerHTML = document.body.innerHTML.replace( /Words to be removed/g, "Words to be replaced");
我想知道是否有办法检测某个单词并显示一条消息,如果它不存在?
答案 0 :(得分:2)
以与您使用的方式类似的方式,您可以使用match
方法。
var matches = document.body.innerHTML.match(/Word to detect/g);
如果有任何匹配,您将得到一组匹配的值。
if(matches.length > 0)
alert("Found!");
这样的事情对你有用。
答案 1 :(得分:0)
如果你的正则表达式与许多单词匹配,我认为这里的一种可能性是用函数将第二个参数替换为.replace()
。然后,您可以根据被替换的单词自行实现一些计数。
replacedCounts = {};
"bunch of words".replace(/(bunch|of|words)/, function(replaced) {
var prevCount = replacedCounts[replaced];
if (!prevCount) { prevCount = 0; }
replacedCounts[replaced] = prevCount + 1;
return "replacement string";
}); // result should be: "replacement string replacement string replacement string "
// you can now consult replacedCounts['bunch'], etc, to see how many of each were replaced.
根据您的确切用法,Praveen的答案可能更有用。