| | 1 | = AdGuard Home |
| | 2 | |
| | 3 | Custom filter block |
| | 4 | {{{ |
| | 5 | |
| | 6 | !||x.ai^ |
| | 7 | !||grok.com^ |
| | 8 | !||chatgpt.com^ |
| | 9 | !||gemini.google.com^ |
| | 10 | !||deepseek.com^ |
| | 11 | !||claude.ai^ |
| | 12 | !||chat.chatbotapp.ai^ |
| | 13 | !||chatbotai.com^ |
| | 14 | !||chat.chatbot.app^ |
| | 15 | !/^.*chat.*$/ |
| | 16 | !-------------- Meaning of /^.*chat.*$/ how to it ---------------------------- |
| | 17 | !/.../ Delimiters used by AdGuard Home to recognize this as a regex pattern. |
| | 18 | !^ Anchors the match to the start of the string (the domain name). |
| | 19 | !.* Match zero or more of any character (except newline). |
| | 20 | !chat The literal string "chat" anywhere in the domain. |
| | 21 | !.* Again match zero or more of any character after "chat". |
| | 22 | !$ Anchors the match to the end of the string. |
| | 23 | !------------------------------------------------------------------------------ |
| | 24 | !---------------- ||deepseek.com^ --------------------------------------------- |
| | 25 | !|| = any subdomain, |
| | 26 | !^ = domain boundary (so it blocks deepseek.com but not notdeepseek.com) |
| | 27 | !------------------------------------------------------------------------------- |
| | 28 | |
| | 29 | }}} |