No Dick-Pics in /r/gonewild
// ==UserScript==//
// @name No Dick-Pics Reddit /r/gonewild
// @description No Dick-Pics in /r/gonewild
// @version 1.3
// @include https://www.reddit.com/r/gonewild/*
// @run-at document-start
// @require https://greasyfork.org/scripts/12228/code/setMutationHandler.js
// @namespace https://greasyfork.org/users/14346
// ==/UserScript==
// process the already loaded portion of the page
process(document.querySelectorAll(
'a.title'
));
// process the stuff loaded from now on
setMutationHandler(
document,
'a.title',
process
);
function process(nodes) {
for (var i=0, n; (n=nodes[i++]); ) {
if (n.textContent.match(/^(?!(.*)?(\[|\(|\{)([0-9]{2}? ?(,|-|\/)? ?)?f(emale)?( ?(,|-|\/)? ?[0-9]{2}?)?(\}|\)|\]))(.*)?(\[|\(|\{)([0-9]{2}? ?(,|-|\/)? ?)?(m( ?(,|-|\/|4)? ?m(.*)?|e|y|an|en|ales?| ?(,|-|\/)? ?4f(.*)?)?)( ?(,|-|\/)? ?[0-9]{2}?)?(\}|\)|\])(?!(.*)?(\[|\(|\{)([0-9]{2}? ?(,|-|\/)? ?)?f(emale)?( ?(,|-|\/)? ?[0-9]{2}?)?(\}|\)|\]))(.*)?$/i)) {
(n.closest('.thing') || n.parentNode).remove();
}
if (n.textContent.match(/(\[|\(|\{)([0-9]{2}? ?(,|-|\/)? ?)?(t|cd|\?)( ?(,|-|\/)? ?[0-9]{2}?)?(\}|\)|\])/i)) {
(n.closest('.thing') || n.parentNode).remove();
}
if (n.textContent.match(/(\[|\(|\{).*(,|-|\/| ) ?[0-9]{2}? ?(,|-|\/)? ?(t|cd|\?) ?(,|-|\/)? ?[0-9]{2}?(\}|\)|\])/i)) {
(n.closest('.thing') || n.parentNode).remove();
}
if (n.textContent.match(/(\[|\(|\{)[0-9]{2}? ?(,|-|\/)? ?(t|cd|\?) ?(,|-|\/)? ?[0-9]{2}?(,|-|\/| ).*(\}|\)|\])/i)) {
(n.closest('.thing') || n.parentNode).remove();
}
}
}