Published using Google Docs
ワードミュート(https用)
Updated automatically every 5 minutes

// ==UserScript==

// @name             ワードミュート(https用)

// @namespace        http://tampermonkey.net/

// @version          0.1

// @description  要素の内容(text)をもとにワードミュートする

// @author           You

// @match            https://*/*

// @icon

// @require http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js

// @grant            none

// ==/UserScript==

// bodyの内容変更を監視

var observer = new MutationObserver(function(){

        removeMuteWard()

});

// bodyの内容変更を監視する設定

const config = {

        childList: true,

        subtree:true

};

$(function(){

        removeMuteWard();

        observer.observe(document.getElementsByTagName("body")[0],config);

});

function removeMuteWard() {

        for(let i = 0; i<RULES.length; i++) {

            let rule = RULES[i];

            let url = document.URL;

            if(url.match(new RegExp(rule.URL))) {

                for(let j=0;j<rule.MUTE_LIST.length;j++) {

                    let muteItem = rule.MUTE_LIST[j];

                    if (muteItem.SEARCH_ELEMENT == "") {

                        muteItem.SEARCH_ELEMENT = muteItem.MUTE_ELEMENT;

                    }

                    $(muteItem.SEARCH_ELEMENT).each(function(index) {

                        if($(this).text().match(new RegExp(muteItem.MUTE_WORD))) {

                            $(this).closest(muteItem.MUTE_ELEMENT).remove();

                        }

                    });

                }

            }

        }

}

// ワードミュートのルール集

const RULES = [

        {

            URL:"ミュート機能を適用したいurl(正規表現可)"

            ,MUTE_LIST :[

               {MUTE_WORD:"ミュートワード(正規表現可)", MUTE_ELEMENT:"ミュート対象要素", SEARCH_ELEMENT:"ミュートワードの検索対象要素"}

               ,{MUTE_WORD:"ミュートワード(正規表現可)", MUTE_ELEMENT:"ミュート対象要素", SEARCH_ELEMENT:"ミュートワードの検索対象要素"}

            ]

        }

        ,{

            URL:"ミュート機能を適用したいurl(正規表現可)"

            ,MUTE_LIST :[

               {MUTE_WORD:"ミュートワード(正規表現可)", MUTE_ELEMENT:"ミュート対象要素", SEARCH_ELEMENT:"ミュートワードの検索対象要素"}

               ,{MUTE_WORD:"ミュートワード(正規表現可)", MUTE_ELEMENT:"ミュート対象要素", SEARCH_ELEMENT:"ミュートワードの検索対象要素"}

            ]

        }

];