Regex w SEO - praktyczne zastosowania wyrażeń regularnych
Wyrażenia regularne (regex) to potężne narzędzie dla SEO - pozwalają filtrować dane w Search Console, Analytics, Screaming Frog i innych narzędziach. Nauka podstaw regex może zaoszczędzić godziny ręcznej pracy. Poznaj praktyczne przykłady dla SEO.
Krótka odpowiedź
Podstawy regex dla SEO
Podstawowe symbole:
- `.` - dowolny pojedynczy znak
- `*` - 0 lub więcej powtórzeń
- `+` - 1 lub więcej powtórzeń
- `?` - 0 lub 1 wystąpienie (opcjonalne)
- `^` - początek tekstu/linii
- `$` - koniec tekstu/linii
- `\` - escape (specjalny znak dosłownie)
Zbiory znaków:
- `[abc]` - a lub b lub c
- `[a-z]` - małe litery a-z
- `[0-9]` - cyfry 0-9
- `[^abc]` - NIE a, b, c
- `\d` - cyfra (= [0-9])
- `\w` - litera, cyfra lub _ (word character)
- `\s` - whitespace (spacja, tab, newline)
Grupy i alternatywy:
- `(abc)` - grupa
- `(a|b)` - a lub b
- `(?:abc)` - non-capturing group
Przykłady:
- `jak.*` - zaczyna się od "jak"
- `.*\?$` - kończy się znakiem zapytania
- `[0-9]{4}` - dokładnie 4 cyfry
- `^/blog/.*` - URL zaczynający się od /blog/
Regex w Google Search Console
Włączenie regex w GSC:
Skuteczność > Filtr (Query lub Page) > wybierz "Pasujące do wyrażenia regularnego"
Filtrowanie pytających fraz:
```regex
^(jak|co|dlaczego|kiedy|gdzie|czy|ile)\s
```
Znajduje frazy zaczynające się od słów pytających.
Frazy z marką:
```regex
(marka|brand|nazwa firmy)
```
Branded queries.
Frazy z lokalizacją:
```regex
(warszawa|krakow|poznan|wroclaw)
```
Frazy transakcyjne:
```regex
(kup|cena|sklep|zamów|cennik)
```
URL-e blogowe:
```regex
^/blog/.*
```
URL-e produktowe:
```regex
^/produkt/.*
```
Filtrowanie parametrów URL:
```regex
\?.*=.*
```
URL-e z query parameters.
Uwaga:
GSC używa RE2 syntax - niektóre advanced features (lookbehind) nie działają.
Regex w Google Analytics 4
Gdzie używać regex w GA4:
- Explorations > Filters
- Audience builder
- Custom dimensions/metrics
- Data filters
Segmentacja ruchu po URL:
```regex
^/kategoria/.*
```
Cały ruch na stronach kategorii.
Landing pages blogowe vs. produktowe:
Blog: `^/blog/.*`
Produkty: `^/p/.*|^/produkt/.*`
Parametry kampanii:
```regex
[?&]utm_source=.*
```
URL-e z UTM parameters.
Wykluczenie wewnętrznego ruchu:
```regex
^/admin/.*|^/panel/.*
```
Uwaga na performance:
- Regex jest wolniejszy niż exact/starts with
- Dla prostych przypadków używaj built-in filters
- Regex gdy naprawdę potrzebne
Testing regex:
- regex101.com - testuj i debuguj
- GA4 preview przy tworzeniu filtra
Regex w narzędziach SEO
Screaming Frog:
Filtrowanie URL-i:
- Configuration > Include/Exclude > dodaj regex
Custom extraction:
- Configuration > Custom > Extraction
- Regex do wyciągania elementów ze stron
Przykład - wyciągnij cenę:
```regex
([0-9,]+)\s*zł
```
Ahrefs/Semrush:
Keyword filtering z regex:
```regex
^how to.*2024$
```
Frazy "how to" kończące się rokiem.
Redirecty (htaccess, nginx):
```apache
RewriteRule ^old-path/(.*)$ /new-path/$1 [R=301,L]
```
$1 = captured group z (.*)
Google Sheets:
Funkcje: REGEXMATCH, REGEXEXTRACT, REGEXREPLACE
```
=REGEXMATCH(A1, "^jak.*")
=REGEXEXTRACT(A1, "([0-9]+)")
=REGEXREPLACE(A1, "\s+", " ")
```
Robots.txt:
Google wspiera ograniczony regex w Disallow:
- `*` - dowolny ciąg
- `$` - koniec URL
```
Disallow: /*?sort=
Disallow: /*.pdf$
```