Updated "regex-based values as target domain for static extended filters" (more examples + more related links)

garry-ut99 2024-07-06 19:54:21 +00:00
parent 6f9b801055
commit a071c90751

@ -956,12 +956,16 @@ Since the base domain name gets used to derive the name of the "entity", `google
#### Hostname regex
Starting with [1.46.1b15](https://github.com/gorhill/uBlock/commit/81498474d6d440b032681aa9952d593749b39efb), you can use regex-based values as target domain (hostname) for static extended filters. Examples of usage:
- `/img[a-z]{3,5}\.buzz/##+js(nowoif)` (solves: [regex-fied domain](https://github.com/uBlockOrigin/uBlock-issues/discussions/2234))
- solves: [regex-fied domain](https://github.com/uBlockOrigin/uBlock-issues/discussions/2234) :
- `/img[a-z]{3,5}\.buzz/##+js(nowoif)` - matches (example): `imgabcd.buzz`
- solves : [Add support for domain double wildcarding in hiding rules (Would be a huge gamechanger for Nitter)](https://github.com/uBlockOrigin/uBlock-issues/issues/2905) :
- `/^nitter\.[^.]+\.[^.]+$/##.timeline-item:has-text(owned)` - matches (example): `nitter.abc.com`, but not `nitter.com`
- `/^nitter(?:\.[^.]+){1,2}$/##.timeline-item:has-text(owned)` - matches (example): `nitter.com` + `nitter.abc.com`
- solves: [Hiding rules are unable to specify to only block on the core domain and none of the subdomains (e.g. ~*.example.org doesn't work)](https://github.com/uBlockOrigin/uBlock-issues/issues/3291) :
- `/^example\.org$/##h1` - matches only `example.org` without subdomains
- `/^www\.example\.org$/##h1` - matches only `www.example.org` without subdomains and without `example.org`
- `/^(?:www\.)?example\.org$/##h1` - matches only `example.org` + `www.example.org` without subdomains
- `/^example\.org$/,somesite.org##h1` - can also be combined with normal names
- `/^example\.org$/,somesite.org,somesite2.*##h1` - can be combined with normal names and entities
Use sparingly, when no other solution is practical from a maintenance point of view -- keeping in mind that uBO has to iterate through all the regex-based values, unlike plain hostname or entity-based values which are mere lookups.