Profanity remover
Remove profanity words from the text.
Input
Output
Readme
What is profanity filtering?
Profanity filtering is the process of detecting and removing or masking offensive, vulgar, or inappropriate words from text. It's commonly used in online platforms, chat applications, forums, and content management systems to maintain a family-friendly environment and comply with community guidelines.
Modern profanity filters go beyond simple word matching. They use pattern recognition to catch variations of bad words, including intentional misspellings, character substitutions (like "sh1t" or "a$$"), and letter repetitions. This makes them effective against users trying to bypass filters with creative spelling.
Tool description
This profanity remover tool detects and censors offensive language in your text. It uses an advanced matching algorithm that catches common profanity variations and obfuscation attempts. You can choose to replace bad words with a character of your choice or remove them entirely. The tool also supports adding custom words to the filter list.
Features
- Detects common English profanity and their variations
- Catches obfuscation attempts like character substitutions and repetitions
- Two censoring modes: replace with character or remove completely
- Customizable replacement character (*, #, etc.)
- Add your own custom words to the filter list
Use cases
- Content moderation: Clean up user-generated content before publishing on websites, forums, or social media platforms.
- Chat filtering: Process chat logs or messages to remove inappropriate language before archiving or sharing.
- Document sanitization: Prepare text documents for professional or family-friendly environments by removing offensive language.
Options explained
| Option | Description |
|---|---|
| Text | The input text you want to filter for profanity |
| Mode | Choose between "Replace with character" (masks bad words) or "Remove completely" (deletes bad words) |
| Replace character | The character used to mask profanity when in replace mode (default: *) |
| Custom bad words | Add your own words to filter, separated by commas. These are added to the built-in profanity list |
How it works
The tool uses a regular expression-based matcher with the Obscenity library. It applies recommended transformers that normalize text before matching, allowing it to detect:
- Standard profanity and slurs
- Leetspeak variations (e.g., "4ss" for "ass")
- Character repetitions (e.g., "shiiit")
- Mixed case variations
- Common substitutions and obfuscations
When profanity is detected, the tool either replaces each character with your chosen symbol or removes the word entirely, cleaning up extra spaces in remove mode.
Limitations
- Built-in dictionary focuses on English profanity
- May occasionally flag legitimate words that contain profane substrings (false positives)
- Cannot detect profanity in images or non-text content
- Context-aware filtering is not supported (words that are offensive in some contexts but not others)
Tips
- Use the custom bad words feature to add industry-specific terms or words in other languages
- Test your replacement character choice—some platforms may have additional filters that flag certain symbols
- For complete removal, review the output to ensure sentences still make grammatical sense