Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- A Gide to Filtering Posts in a Thread on 4chan(nel) + How to Create Your Own Filters
- ###===============###===============###
- IMPORTANT NOTES:
- --- Nearly all browsers have a feature to search for text (Ctrl + F). Use this feature to jump around the guide with ease. For example, if you want to jump to the Introduction, press Ctrl + F and type in "(001.)" or "Introduction". Alternatively, if you are looking for a specific filter, you can try and search the word you want filtered and it will lead you to the appropriate filter (not guaranteed to work, however).
- --- Some of these filters aren't perfect, and have ample room for improvement.
- --- It is somewhat likely that you will encounter false positives and/or unintentional filtering, depending on what filters you use and where you use them.
- --- The filters in this guide were made to get as little false positives as possible and avoid unintentional filtering.
- ###===============###===============###
- UPDATES:
- Any updates to this guide will be documented here (if I ever decide to update it, that is).
- (Oct. 7, 2018): Initial creation
- ###===============###===============###
- (000.) - TABLE OF CONTENTS
- (000.) Table of Contents
- (001.) Introduction
- (002.) How to Apply Filters
- (003.) How This Guide is Structured
- (004.) Filters
- (004A.) References to Other Sites / Services
- (004B.) Links
- (004C.) Thread Personalities, E-Celebs, and Boogeymen
- (004D.) Bitching and Whining
- (004E.) Buzzwords and Cringe
- (004F.) Miscellaneous
- (004G.) "Anti-Filter" Filters
- (005.) 4chan X Exclusive Filters
- (005A.) Forced Anonymity
- (005B.) Miscellaneous
- (005C.) MD5 Hashes
- (006.) How to Create Your Own Filters
- (006A.) - Literal Characters and Metacharacters
- (006B.) - Character Classes and Shorthand Character Classes
- (006C.) - Grouping
- (006D.) - Quantifiers
- (006E.) - Modifiers
- (006F.) - Other Important Items
- (006G.) - Conclusion to "How to Create Your Own Filters"
- (007.) Conclusion
- (008.) FAQ / Troubleshooting
- ###===============###===============###
- (001.) - INTRODUCTION
- Are you tired of seeing the same shitposts over and over again? Can't handle the banter? Someone living in your head rent-free?
- Then this guide is for you!
- This list contains numerous filters used to hide some common and blatant shitposting.
- Below, you will find:
- --- A guide on how to add these filters to your list (for both default 4chan(nel) and 4chan X)
- --- An explanation on the structure of the filters listed
- --- Numerous filters, organized into their own categories
- --- A small guide on how to create your own filters
- I highly suggest you read the beginning sections of this guide if you are new to filtering to prevent mistakes.
- However, if you already have experience with filtering, then you can just go right ahead and skip straight to the list.
- ###===============###===============###
- (002.) - HOW TO APPLY FILTERS
- IF YOU ARE USING DEFAULT 4CHAN(NEL):
- Step 1: Click [Settings] in the upper or lower right-hand corner of the screen.
- Step 2: A window should pop up. Click "Filters & Post Hiding".
- Step 3: In this submenu, look at the setting titled "Filter and highlight specific threads/posts". Make sure that the box to the left of this setting is checked, then click [Edit] to the right of this setting.
- Step 4: Another window should pop up. There should be a row of information:
- --- The check box under the "On" column toggles whether or not the filter is active.
- --- The text box under the "Pattern" column is where the actual filter goes.
- --- The small text box under the "Boards" column tells the filter what boards you want the filter to apply to, separated
- by a space. For example, if you want the filter to be applied to /v/ and /vg/, then you type in "v vg" (without quotes).
- Leave this box blank if you want the filter to apply to every board.
- --- The drop-down menu under the "Type" column is where you specify what field of the post the filter should apply to.
- The options are pretty self-explanatory. You'll likely use "Comment" a lot.
- --- The check box under the "Hide" column tells the filter that if it catches something, it will hide the offending
- post. Make sure it is checked.
- --- The x's under the "Del" column will delete the filter when clicked.
- Step 5: When finished, click the "Save" button on the bottom of the pop-up window, then "Save Settings" on the next pop-up window. Make sure you click "Save" and "Save Settings" instead of the x's on the upper right-hand corner of the window, otherwise your settings and filters will not be saved!
- IF YOU ARE USING 4CHAN X:
- Step 1: Click the wrench icon in the upper right-hand corner of the screen.
- Step 2: Click the "Filter" tab on the top of the window that pops up.
- Step 3: There should be a box that says "Guide". Click it to bring up a drop-down menu.
- --- This "Guide" window contains a lot of helpful information pertaining to filters. If you've never used filters
- before or are inexperienced with them, it is suggested that you read it.
- Step 4: In the drop-down menu, select the type of item that you want filtered. The options are pretty self-explanatory. You'll likely use "Comment" a lot.
- Step 5: Type in or paste the filter that you want in the large text box.
- --- Make sure each filter is on a new line.
- --- If you want to disable a filter, add a # to the very front of the line. This will comment the filter out.
- To re-enable the filter, simply remove the # in front.
- --- By default, the filter will apply to all boards. If you want the filter to only apply to certain boards, then add
- "boards:[boards]" to the filter (without quotation marks, and [boards] replaced with the actual board letter(s)
- separated by commas). For example, /ass/;boards:a,b will filter any post containing "ass" on /a/ and /b/ only.
- --- The reverse is also true; if you want the filter to apply to all boards EXCEPT for a select few, then add
- "exclude:[boards]" to the filter (without quotation marks, and [boards] replaced with the actual board letter(s)
- separated by commas). For example, /fuck/;exclude:c,d will filter any post containing "fuck" everywhere EXCEPT for
- /c/ and /d/.
- Step 6: When finished, close the menu and refresh the page.
- ###===============###===============###
- (003.) - HOW THIS GUIDE IS STRUCTURED
- Each entry in the guide below is structured as follows:
- FILTER: The filter itself.
- TYPE: What you select in the drop-down menu (See the section "How to Apply Filters" for more information)
- DESCRIPTION: An explanation of the filter and what it filters.
- EXAMPLES: Some (not all) examples of what gets filtered if the filter is applied.
- VERSION: The version number of the filter. Used to document changes and fixes to a filter and shows if it received updates.
- NOTE: Any miscellaneous notes about the filter. Not all entries will have this part.
- Make sure to type in or copy the filter exactly as it appears next to "FILTER"; otherwise, it probably won't work.
- ###===============###===============###
- (004.) - FILTERS
- The following filters in this section will work for both default 4chan(nel) and 4chan X.
- (004A.) - REFERENCES TO OTHER SITES / SERVICES
- You have to go back, etc. etc.
- FILTER: /[rpl]l?e[db]{2}it\w*\b/i
- TYPE: Comment
- DESCRIPTION: Filters "Reddit" and variants.
- EXAMPLES: redditor, PLEBBIT, Leddit
- VERSION: 1
- FILTER: /(d|t)umblr/i
- TYPE: Comment
- DESCRIPTION: Filters "Tumblr" and variants.
- EXAMPLES: tumblr, TUMBLRITE, Tumblrina
- VERSION: 1
- FILTER: /(dis|shits|jews?)cords?/i
- TYPE: Comment
- DESCRIPTION: Filters "Discord" and variants.
- EXAMPLES: Discord, shitscord, JEWSCORD
- VERSION: 1
- FILTER: /straw[- ]?poll(?!\.me)/i
- TYPE: Comment
- DESCRIPTION: Filters "Strawpoll" and variants.
- EXAMPLES: strawpoll, STRAW-POLL
- VERSION: 1
- NOTE: Will NOT filter out Strawpoll links.
- (004B.) - LINKS
- Don't want to see links for some reason? These are for you.
- FILTER: /youtu(\.be|be\.com)/
- TYPE: Comment
- DESCRIPTION: Filters any YouTube links.
- EXAMPLES: youtube.com/watch?v=..., youtu.be/...
- VERSION: 1
- NOTE: Will NOT filter out the word "YouTube".
- FILTER: /strawpoll\.me/
- TYPE: Comment
- DESCRIPTION: Filters those Strawpolls that TOTALLY have an impact on anything and DEFINITELY do not incite pointless arguments about things that don't matter at all.
- EXAMPLES: strawpoll.me/...
- VERSION: 1
- NOTE: Will NOT filter out the word "Strawpoll".
- FILTER: /pastebin\.com/
- TYPE: Comment
- DESCRIPTION: Filters Pastebin links.
- EXAMPLES: pastebin.com/...
- VERSION: 1
- NOTE: Will NOT filter out the word "Pastebin".
- NOTE: Ironically, will filter out links to this Pastebin as well
- (004C.) - THREAD PERSONALITIES, E-CELEBS, AND BOOGEYMEN
- They live in your head rent-free.
- FILTER: /\n>?t\./i
- TYPE: Comment
- DESCRIPTION: Filters any instance of "t.".
- EXAMPLES: t. xfag, t. burger, >t. eurocuck
- VERSION: 1
- FILTER: /\b[\w]+(fag(got)?s?|anons?|cunts?|posters?|homos?|tards?|niggers?|shitters?|friends?|fair(y|ies))/i
- TYPE: Comment
- DESCRIPTION: Filters any and all Xfags, Xanons, Xcunts, Xposters, Xfriends, etc.
- EXAMPLES: footfag, xyzfriend, AVATARFAGS, shitposters, newFAG, oldfags, drawfriends, ESODfag
- VERSION: 1
- NOTE: Very excessive. Use if you really don't want to see any mention of the above.
- NOTE: Will not filter out fag, anon, cunt, poster, friend, etc.
- NOTE: Causes a LOT of unintentional filtering. Things like "retard", "girlfriend", and "canon" will be caught by this filter.
- FILTER: /\b[\w]+(fag(got)?s?|anons?)/i
- TYPE: Comment
- DESCRIPTION: Filters any and all Xfags and Xanons.
- EXAMPLES: potatofag, AVATARFAGS, newFAG, oldfags, ESODfag
- VERSION: 1
- NOTE: Not as excessive as the filter above. Use if you want a simplified version of the filter above, or don't want most of the unintentional filtering (keyword: MOST. Still causes some unintentional filtering).
- NOTE: Will not filter out fag and anon.
- (004D.) - BITCHING AND WHINING
- Because your opinion really matters. Be the change you want to see, or whatever.
- FILTER: /blog(post(ing|s)?|shitters?|g?er)?/i
- TYPE: Comment
- DESCRIPTION: Filters "blogposting" and variants.
- EXAMPLES: blogpost, BLOGSHITTER, Blog, blogPOSTS
- VERSION: 1
- FILTER: /\be[ -]?celebs?/i
- TYPE: Comment
- DESCRIPTION: Filters "e-celeb" and variants.
- EXAMPLES: e-celeb, ECelebs, e CELEBS
- VERSION: 1
- FILTER: /attention[ -]?whor(e|e?ing)/i
- TYPE: Comment
- DESCRIPTION: Filters "attentionwhore" and variants.
- EXAMPLES: attention whoring, Attentionwhore
- VERSION: 1
- FILTER: /off[ -]?topic/i
- TYPE: Comment
- DESCRIPTION: Filters "off-topic" and variants.
- EXAMPLES: off-topic, Off topic
- VERSION: 1
- FILTER: /(content[- ]?polic(e|e?ing))|(polic(e|e?ing)[- ]?content)/i
- TYPE: Comment
- DESCRIPTION: Filters accusations of content policing.
- EXAMPLES: content police, Policing CONTENT
- VERSION: 1
- FILTER: /shit[ -]?post/i
- TYPE: Comment
- DESCRIPTION: Filters "shitpost" itself and variants.
- EXAMPLES: shitpost, SHIT POSTING, Shit-Posts
- VERSION: 1
- (004E.) - BUZZWORDS AND CRINGE
- Remember when these words actually meant something instead of being used as generic insults?
- FILTER: /primar(y|ies)/i
- TYPE: Comment
- DESCRIPTION: Filters "primary" and variants.
- EXAMPLES: Primary, primaries
- VERSION: 1
- FILTER: /secondar(y|ies|y?ism)/i
- TYPE: Comment
- DESCRIPTION: Filters "secondary" and variants.
- EXAMPLES: SECONDARIES, Secondary, secondaryism
- VERSION: 1
- FILTER: /te(tr|rt)iar(y|ies)/i
- TYPE: Comment
- DESCRIPTION: Filters "tertiary" and variants.
- EXAMPLES: TETRIARIES, tertiary
- VERSION: 1
- FILTER: /[bz][o0]{2}mers?/i
- TYPE: Comment
- DESCRIPTION: Filters "boomer" and "zoomer" and variants.
- EXAMPLES: boomers, ZOOMers, BOOMER
- VERSION: 1
- FILTER: /incels?/i
- TYPE: Comment
- DESCRIPTION: Filters "incel" and variants.
- EXAMPLES: incel, INCELS, r/incels
- VERSION: 1
- FILTER: /autis(m|tic|t)s?/i
- TYPE: Comment
- DESCRIPTION: Filters "autism" and variants.
- EXAMPLES: autism, AUTISTIC, Autists
- VERSION: 1
- FILTER: /cring(e|e?y|ed|ier)/i
- TYPE: Comment
- DESCRIPTION: Filters "cringe" and variants.
- EXAMPLES: cringe, CRINGY
- VERSION: 1
- FILTER: /seeth(e|e?ing)/i
- TYPE: Comment
- DESCRIPTION: Filters "seethe" and variants.
- EXAMPLES: seethe, SEETHING
- VERSION: 1
- FILTER: /\bdab(bed)?\b/i
- TYPE: Comment
- DESCRIPTION: Filters "dab" and variants.
- EXAMPLES: dab, DAB, Dabbed on
- VERSION: 1
- FILTER: /edg(y|e)/i
- TYPE: Comment
- DESCRIPTION: Filters "edge" and variants.
- EXAMPLES: edgelord, EDGY, ow the edge
- VERSION: 1
- FILTER: /\b[t2]bq?h/i
- TYPE: Comment
- DESCRIPTION: Filters "TBH" and variants.
- EXAMPLES: tbqhdesu, Tbh
- VERSION: 1
- FILTER: /yikes/i
- TYPE: Comment
- DESCRIPTION: Filters "yikes" and variants.
- EXAMPLES: Yikes, YIKES
- VERSION: 1
- FILTER: /(bas(te|ed|ado))(?!(\s(on|off|in|out)))/i
- TYPE: Comment
- DESCRIPTION: Filters misuse of "based".
- EXAMPLES: based, BASTE
- VERSION: 1
- FILTER: /bas(te|ed|ado)/i
- TYPE: Comment
- DESCRIPTION: Like the above filter but has NO exceptions. Use this one OR the one above, as using both is redundant.
- EXAMPLES: based on, BASTE, Absolutely BASED
- VERSION: 1
- FILTER: /\w+-?pills?/i
- TYPE: Comment
- DESCRIPTION: Filters all sorts of pills.
- EXAMPLES: redpill, blue-pilled, blackpill, fuck-me-in-the-ass-pilled
- VERSION: 1
- FILTER: /\bwee(b|abo[ou])s?/i
- TYPE: Comment
- DESCRIPTION: Filters "weeaboo" and variants.
- EXAMPLES: weebs, WEEABOOS
- VERSION: 1
- FILTER: /br+a+p/i
- TYPE: Comment
- DESCRIPTION: Filters "brap" and variants.
- EXAMPLES: brap, BRAAAAAAP, Braphog
- VERSION: 1
- FILTER: /\b(kys|(kill\syour?sel(f|ves)))/i
- TYPE: Comment
- DESCRIPTION: Ouch
- EXAMPLES: KYS, kill yourself, KILL YOURSELVES
- VERSION: 1
- FILTER: /\bfag(g?ot)?s?\b/i
- TYPE: Comment
- DESCRIPTION: Filters "faggot" by itself and variants.
- EXAMPLES: fag, FAGGOT, Fags
- VERSION: 1
- FILTER: /\ble\b/i
- TYPE: Comment
- DESCRIPTION: Filters reddit incarnate
- EXAMPLES: le seethe
- VERSION: 1
- FILTER: /trann(y|ies)?/i
- TYPE: Comment
- DESCRIPTION: Filters reddit incarnate
- EXAMPLES: le seethe
- VERSION: 1
- (004F.) - MISCELLANEOUS
- These filters don't really fit a particular category. However, they're still very useful.
- FILTER: /\w+\*+\w+/
- TYPE: Comment
- DESCRIPTION: Filters words that have been censored by asterisks.
- EXAMPLES: th*s, c*ck, f*ck
- VERSION: 1
- FILTER: /[:;x](\^)?(\s)?(\^)?(')?[)do(]/i
- TYPE: Comment
- DESCRIPTION: Filters a few common text faces.
- EXAMPLES: :), ;O, :^). :'D
- VERSION: 1
- NOTE: Possibly causes unintentional filtering. Needs more testing.
- FILTER: /\*[\w ]+\*/
- TYPE: Comment
- DESCRIPTION: Filters actions encapsulated in asterisks.
- EXAMPLES: *teleports behind you*, *snap*, *brap*
- VERSION: 1
- FILTER: /([a-z])\1\1\1\1\1+/i
- TYPE: Comment
- DESCRIPTION: Filters letters repeated more than five times.
- EXAMPLES: AAAAAAA, WwWwWwW, ZZZzzz
- VERSION: 1
- FILTER: /([a-z]-)\1+/i
- TYPE: Comment
- DESCRIPTION: Filters stutters. Filtering begins at 2 stutters.
- EXAMPLES: C-C-C-COMBO BREAKER
- VERSION: 1
- FILTER: /^>[^\n]*$/
- TYPE: Comment
- DESCRIPTION: Filters posts with just one line of greentext.
- EXAMPLES: >he doesn't know, >implying
- VERSION: 1
- FILTER: /\B\/(\w{1,4})\/\B/
- TYPE: Comment
- DESCRIPTION: Filters any mention of boards, generals, etc.
- EXAMPLES: /a/, /jp/, /out/, /v/
- VERSION: 1
- FILTER: /~/
- TYPE: Comment
- DESCRIPTION: Filters the tilde.
- EXAMPLES: desu~, uguu~~~
- FILTER: /#/
- TYPE: Comment
- DESCRIPTION: Filters the pound sign / number sign / hashtag.
- EXAMPLES: #handleit, #metoo
- (004G.) - "ANTI-FILTER" FILTERS
- Is someone trying to be slick? Then use these.
- FILTER: /\b(\w\s){4}\w\b/i
- TYPE: Comment
- DESCRIPTION: Filters words with its letters spaced.
- EXAMPLES: d i s c o r d, s e e t h i n g, b a s e d, a b c d e f g
- VERSION: 1
- NOTE: This filter received little testing. Possibility of unintentional filtering.
- FILTER: /\b\w+[\[\{].*[\]\]]\w+\b/i
- TYPE: Comment
- DESCRIPTION: Filters posts broken up by square and curly brackets.
- EXAMPLES: F[u]ck, tb{q}h
- VERSION: 1
- NOTE: This filter received little testing. Possibility of unintentional filtering.
- FILTER: /\w+\.+\w+/
- TYPE: Comment
- DESCRIPTION: Filters posts broken up by periods.
- EXAMPLES: fu.ck, hel.lo
- VERSION: 1
- NOTE: Will unintentionally also filter posts that don't provide a space after the period at the end of a sentence. For example,
- "This is a test.You failed." will be filtered.
- FILTER: /[ɑæɐɑ̃βɓʙɕçðʒɗɖəɚɵɘɛɜẽɛ̃ɝɞɠɢʛɥɦħḥɧʜɪɪ̈ɨɟʝʄɫɬɭɮʟɱŋɲɴɳɔœøɒɔ̃ɶɸɾʁɹɻʀɽɺʃʂșθʃʈʊʉʌʋʍɯɰχʎɣʏɤʒʐʑʔʕʢʡⱭⱰⱯƁƂꞴƆƇÐƉƊƊƏƎƐꞫꞬƓƔĦꞪꞍƗꞮƖꞲƘꞰⱢꞭⱮƜŊƝȠƟƤɊⱤƦƩƮŦƬꞱɄƱƲɅꞳꭓƷΘΦɁŤťṪṫŢţṬṭȚțṰṱṮṯŦŧȾⱦƬƭƮʈẗᵵƫȶ]+/
- TYPE: Comment
- DESCRIPTION: Filters out many letters used in other languages.
- EXAMPLES: niggẽr, fɑ̃ggot
- VERSION: 1
- NOTE: VERY excessive. You should only use this filter if someone is actively attempting to bypass filters.
- FILTER: /[àáâäæãåāăçćčèéêëēėẽęìįīíïîłńñõōøœóòöôßśšūúùüûÿžźżÀÁÂÄÆÃÅĀÇĆČÈÉÊËĒĖĘÌĮĪÍÏÎŁŃÑÕŌØŒÓÒÖÔŚŠŪÚÙÜÛŸŽŹŻ]+/
- TYPE: Comment
- DESCRIPTION: Filters out many letters used in other languages.
- EXAMPLES: rëddit, ávatarfag
- VERSION: 1
- NOTE: Similar to the filter above. Might contain some duplicates.
- NOTE: VERY excessive. You should only use this filter if someone is actively attempting to bypass filters.
- FILTER: /[ΑαΒβΓγΔδΕεΖζΗηΘθΙιΚκΛλΜμΝνΞξΟοΠπΡρΣσςΤτΥυΦφΧχΨψΩω]+/
- TYPE: Comment
- DESCRIPTION: Filters out many letters used in other languages.
- EXAMPLES: αsshole, Ρenis
- NOTE: Similar to the two filters above. Might contain some duplicates.
- NOTE: VERY excessive. You should only use this filter if someone is actively attempting to bypass filters.
- FILTER: /[БГДёЖПФИйЛЦШЩЭЮЯЫЪЬАаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя]+/
- TYPE: Comment
- DESCRIPTION: Filters communists.
- EXAMPLES: Ьastard, Гetard
- VERSION: 1
- NOTE: VERY excessive. You should only use this filter if someone is actively attempting to bypass filters.
- ###===============###===============###
- (005.) - 4CHAN X EXCLUSIVE FILTERS
- The following filters in this section will only work with 4chan X, and not with default 4chan(nel).
- (005A.) - FORCED ANONYMITY
- Thread overrun by namefags and tripfags? Use these.
- FILTER: /^(?!Anonymous$)/
- TYPE: Name
- DESCRIPTION: Filters any and all namefags (in other words, filters any post that has a name other than Anonymous).
- EXAMPLES: Anon, AnOnYmOuS
- VERSION: 1
- NOTE: For some reason, this filter doesn't work in default 4chan(nel), but works flawlessly in 4chan X.
- NOTE: This filter already comes with 4chan X, but it is commented out. Remove the # in front of the filter in the "Name" section to apply it.
- FILTER: /^!/
- TYPE: Tripcode
- DESCRIPTION: Filters any and all tripfags.
- EXAMPLES: !123456.abcdef
- VERSION: 1
- NOTE: For some reason, this filter doesn't work in default 4chan(nel), but works flawlessly in 4chan X.
- NOTE: This filter already comes with 4chan X, but it is commented out. Remove the # in front of the filter in the "Tripcode" section to apply it.
- (005B.) - MISCELLANEOUS
- Random 4chan X-exclusive filters here.
- FILTER: /^[>@]\d+$/m
- TYPE: Comment
- DESCRIPTION: Filters anti-(You) replying.
- EXAMPLES: @123456789, >987654321
- VERSION: 1
- (005C.) - MD5 HASHES
- 4chan X allows you to filter MD5 hashes. Simply speaking, this allows you to filter images. Place the hash into the "Image MD5" section of your filter list.
- Below are some other Pastebins filled with MD5 hashes.
- NOTE: I did not create these Pastebins, meaning that they are subject to change/deletion.
- Pepes, Wojaks, etc.
- https://pastebin.com/PDL78Gy1
- https://paste2.org/bMzWEOY9
- Here are some specific hashes.
- *none yet*
- ###===============###===============###
- (006.) - HOW TO CREATE YOUR OWN FILTERS
- The main purpose of this guide is to offer a list of pre-made filters to anyone who wants or needs them and allow the filters to be effortlessly copied into someone's filter list. Of course, it is impossible to create a list that will satisfy everyone. That's what this section is for. Don't see a certain filter that you want? Then you have the option of making one yourself.
- Keep in mind that this tutorial is not meant to be a comprehensive guide; it is just a somewhat lengthy introduction to how filters operate. I recommend you do some outside research on "Regular Expressions" if you want more in-depth explanations. Also, I am no expert on the subject matter, but I know enough relevant information for filtering. With that out of the way, let's begin.
- 4chan(nel) and 4chan X both utilize regular expressions in JavaScript for filters. If you haven't noticed already, a lot of the filters above share a few common characteristics; for example, the forward slashes (/) at the beginning and end of the filter and the single letter at the very end (like "i"). Generally speaking, there are some rules to follow:
- --- Regular expressions should be encapsulated in forward slashes (/).
- --- Modifiers belong at the very end of the expression, after the final forward slash.
- --- Unless specified, expressions will detect EVERY instance where it applies. For example, /mat/ filters "mat", but it also filters "doormat", "matter", "tomato", and "mate". The examples in this guide don't really convey this crucial fact, but just keep it in mind when creating filters. You'll learn how to specify when filters apply later on in this section...
- (006A.) - LITERAL CHARACTERS AND METACHARACTERS
- Literal characters are literally characters that do nothing. For example, in the expression /abc/, the "a", "b", and "c" are literal, ordinary characters. However, there are some characters that are special, and these are sometimes called "metacharacters". Metacharacters have a special meaning in regular expressions, and will thus likely cause errors when used alone. The metacharacters are as follows:
- --- the question mark (?): See the subsection "Quantifiers".
- --- the caret (^): See the subsections "Character Classes and Shorthand Character Classes" and "Other Important Items".
- --- the vertical bar (|): See the subsection "Grouping and Capturing".
- --- the period (.): See the subsection "Other Important Items".
- --- the backslash (\): Used to turn some literal characters into metacharacters, and vice versa (See last sentence of this subsection).
- --- the asterisk (*): See the subsection "Quantifiers".
- --- the dollar sign ($): See the subsection "Other Important Items".
- --- the plus sign (+): See the subsection "Quantifiers".
- --- the opening and closing parentheses (()): See the subsection "Grouping and Capturing".
- --- the opening square bracket ([): See the subsection "Character Classes and Shorthand Character Classes".
- --- the opening curly bracket ({): See the subsection "Quantifiers".
- Metacharacters must be preceded with a backslash (\) in order to use them as literal characters. For example, /I get $$$/ will only match "I get", while /I get \$\$\$/ will match "I get $$$". Likewise, certain literal characters preceded with a backslash become metacharacters. For example, "s" by itself is a literal character, but "\s" becomes a shorthand character class (See next section).
- (006B.) - CHARACTER CLASSES AND SHORTHAND CHARACTER CLASSES
- A character class will match one instance out of several. Character classes use square brackets ([]) to denote something as a character class. Hyphens (-) can be used to denote a range of characters; multiple ranges can be used at once and individual characters can be included as well. Keep in mind that character classes are case-sensitive. Below are several examples of character classes:
- --- /[abc]/ will match either "a", "b", or "c" individually.
- --- /[a-n]/ will match any character in the alphabet starting at "a" and ending at "n", like "e", "h", and "n".
- --- /t[ioa]ts/ will match "tits", "tats", and "tots", but not "tioats", "tets", or "tAts".
- --- /[a-oA-Oq-zQ-ZP]/ will match the entire alphabet EXCEPT for the lowercase "p".
- --- /[0-5]/ will match any number from 0 to 5.
- --- /[a-nO-Z0-7]/ will match any lowercase letter from "a" to "n", any uppercase letter from "O" to "Z", and any number from 0 to 7.
- A caret (^) can be used to match characters NOT in the character class. Examples include:
- --- /[^abc]/ is functionally identical to /[d-z]/ and will match any uppercase letter and any letter from "d" to "z".
- --- /t[^i]ts/ will match "tats", "tots", "t8ts", "t%ts", etc., but not "tits".
- Since some character classes are used so frequently, shorthand character classes are used in place of them for ease. Shorthand character classes are metacharacters that function identically to the character classes they are replacing, but are cleaner and a lot nicer to look at.
- --- "\w" will match any word character, and it takes the place of [A-Za-z0-9_].
- --- "\d" will match any digit, and it takes the place of [0-9].
- --- "\s" will match any whitespace character, and it takes the place of spaces, tabs, and linebreaks.
- (006C.) - GROUPING AND CAPTURING
- You can group characters together for more intricate and precise filters. Use a set of parenthesis (()) to create a group of characters. Furthermore, you can use the vertical bar (|) to create choices for the filter you are creating. Some examples of grouping include:
- --- /Fuck(er|\soff)/ will match both "Fucker" and "Fuck off".
- --- /a(b|c)/ will match both "ab" and "ac".
- --- /(yes|no|maybe)/ will match "yes", "no", and "maybe".
- (006D.) - QUANTIFIERS
- Quantifiers are used to detect repetition. They allow for more concise, organized regular expressions that are extremely useful in detecting instances of repeated and situational characters. Keep in mind that quantifiers will only detect whatever is right before them.
- The plus sign (+) is used to detect instances where a word, group, or class matches one or more times. Examples include:
- --- /ba+/ will match "ba", "baaa", and "baaaaaaaaaa", but not "b" or "bAAAA".
- --- /pi+zza/ will match "pizza", "piiiiiza", and "piiiiiiiiiiza", but not "pzza" or "pIzza".
- --- /10+/ will match 10, 10000, 1000000, and 100000000000, but not 1.
- --- /(br)+/ will match "br", "brbrbr", and "brbrbrbrbrbrbr", but not "BRBR", "b", "r", or "rb".
- --- /s[au]+ck/ will match "suck", "sack", "suuuuuck", "saaaaack", "suauauauck", "saaaaaauuuuuuaaaaack", etc.
- --- /1\s+2/ will match "1 2", "1 2", "1 2", etc.
- The asterisk (*) is used to detect instances where a word, group, or class matches zero or more times. Examples include:
- --- /ab*c/ will match "abc", "ac", and "abbbbbbbc".
- --- /25*/ will match 2, 25, and 255555555, but not 5.
- --- /ha(ha)*/ will match "ha", "haha", "hahahahahahaha", etc.
- --- /f[ua]*ck/ will match "fck", "fuck", "faaack", "fuuuuaack", etc.
- The question mark (?) is used to detect instances where a word, group, or class either appears once or does not appear at all. Examples include:
- --- /favou?rite/ will match both "favorite" and "favourite".
- --- /ass(hole)?/ will match both "ass" and "asshole", but not "hole".
- --- /no\s?space/ will match both "no space" and "nospace".
- --- /red (letter|rover)?/ will match "red", "red letter", and "red rover", but not "letter" or "rover".
- The curly brackets ({}) are used with numbers to detect instances where a word, group, or class repeats a certain amount of times. If the brackets have a certain number, then the expression will detect repetition according to that number. If the brackets have two numbers separated by a comma (,), then the expression will detect repetition according to that range of numbers. If the brackets have only one number followed by a comma, then the expression will detect repetition starting at that number. Examples include:
- --- /ga{5}y/ will ONLY match "gaaaaay", and not "gay" or "gaaay".
- --- /no{3,5}/ will match "nooo" and "nooooo", but not "no".
- --- /la[zs]{2,}er/ will match "lazzzzzer", "laszer", and "lazzzzzsssszzzzszssszzer", but not "lazer" or "laser".
- (006E.) - MODIFIERS
- Modifiers do exactly what you'd think they do: they modify a regular expression. As stated previously, modifiers go at the very end of a regular expression after the final forward slash (/). Modifiers are NOT required for an expression to function, but they expand on the filtering capabilities of it. There are a few modifiers, but for the purposes of filtering (and the fact that 4chan(nel) uses JavaScript for regular expressions), we only care about one of them:
- --- "i" is used to denote case insensitivity (in other words, capitalization doesn't matter)
- The "i" modifier is extremely useful for matching patters without worrying about capitalization. For example:
- --- /test/ will match "test", but /test/i will match "test", "TEST", "Test", "TeSt", "teST", etc.
- --- /[bd]itch/ will match "ditch" and "bitch", but /[bd]itch/i will match "DITCH", "Bitch", "DITch", etc.
- Instead of tiring yourself out by creating filters for every possible capitalization variation of a pattern, just use "i". You'll save a lot of time and effort.
- (006F.) - OTHER IMPORTANT ITEMS
- This subsection contains things that I couldn't find an appropriate place for, but are still extremely useful.
- The period (.) represents almost anything. For example:
- --- /g.y/ will match "gay", "guy", "goy", "g@y", "g%y", etc.
- --- /f.gg.t/ will match "faggot", "figget", "fzggwt", "f@gg t", etc.
- --- /abc.*def/ will match "abcdef", "abcyou suckdef", "abctpw_vmhlfu%def", etc.
- The word boundary "\b" denotes a situation where a non-whitespace character is followed by a whitespace character, and vice versa. It is essential for narrowing down filters and making them more specific to avoid unnecessary filtering. Remember how I mentioned at the beginning of this tutorial how /mat/ will capture not only "mat", but also "doormat" and "tomato" as well? Word boundaries are the solution.
- --- /mat/ will match "mat", "doormat", and "tomato", but /\bmat\b/ will ONLY match "mat".
- --- /look\b/ will match "look", but not "looking" or "looks".
- --- /\btry/ will match "try", "trying", and "tried", but not "retry".
- The carat (^) and dollar sign ($) are called anchors, and tell the filter to look at either the beginning of a pattern or the end of a pattern. If both are used simultaneously in a single filter, they will tell the filter to only look at individual lines that ONLY contain the filtered text in question. Examples include:
- --- /^p/ will match "peanut", but not "crap".
- --- /b$/ will match "crab", but not "bro".
- --- /^stupid/ will match "stupid anon", but not "anon is stupid".
- --- /away$/ will match "go away", but not "away he goes".
- --- /^potato$/ will match "potato" BY ITSELF and not "potatoes are food" and "I hate potatoes".
- Lookaheads are used to give your filters exceptions and specific instances where they apply. Want to filter a certain word ONLY IF it is followed by another specific word? Then lookaheads are for you. There are two kinds of lookaheads: the positive lookahead (?=) and the negative lookahead (?!). Positive lookaheads tell the expression to match something ONLY if it is followed by something else. Likewise, negative lookaheads tell the expression to match something EXCEPT if it is followed by something else. Examples are below:
- --- /ab(?=cd)/ will NOT match "ab", but it WILL match "abcd".
- --- /test(?=ing|s)/ will NOT match "test" or "testies", but it WILL match "testing" and "tests".
- --- /go(?!ing)/ will match every instance of "go" EXCEPT for "going".
- (006G.) - CONCLUSION TO "HOW TO CREATE YOUR OWN FILTERS"
- If you've made it to the end of this section, then congratulations: you now have some understanding on how filters on 4chan(nel) function. All of the information provided in this section should be more than enough for you to create your own filters. Of course, if you are still interested and this guide wasn't enough for you, you can do your own outside research. After all, this was just a simple introduction.
- ###===============###===============###
- (007.) - CONCLUSION
- There you have it. A whole bunch of pre-made filters for you to simply copy and paste into your filter lists, plus a guide on how to create your own. Use them if you are exhausted with shitposting, or to pretend that the threads and boards you visit are of higher quality than they actually are. I know that some of these filters may be ridiculous and retarded, but I wanted to give options for readers. I recommend you check back from time to time to see if I have updated this guide and fixed something or added something else.
- Happy filtering! Have fun acting like the text you filtered doesn't exist!
- ###===============###===============###
- (008.) - FREQUENTLY ASKED QUESTIONS / TROUBLESHOOTING
- Question: Help! A filter doesn't work!
- Answer: Did you...
- ...make sure that the filter is actually enabled / isn't commented out?
- ...copy and paste the filter correctly?
- ...specify the correct filter type?
- ...make sure that the filter applies to the board you want?
- If you made sure that you followed the suggestions above, then the issue could be a few things:
- --- The filter doesn't apply because the pattern doesn't match the text you want filtered. Check the filter again: does the filter actually apply to the text you want filtered?
- --- The filter is being bypassed. See the "'Anti-Filter' Filters" section for possible solutions.
- --- The filter is broken. If this is the case, I likely fucked something up. If you want, you could try and fix the filter if you know what you are doing.
- Question: Can you make a filter for (insert example here)?
- Answer: Sorry, but I do not do requests. I try to create filters based on the content I see. If a certain shitpost becomes repetitive and annoying, then I'll try to create a filter for it. If you encounter a shitpost that isn't covered in this guide, you can always make your own; see the section "How to Create Your Own Filters".
- ###===============###===============###
- This part is for reference only. You can ignore it.
- FILTER:
- TYPE:
- DESCRIPTION:
- EXAMPLES:
- VERSION:
Advertisement
Add Comment
Please, Sign In to add comment