Lewati ke konten utama

Cara Menggunakan Regular Expressions di Ahrefs

Pelajari cara menggunakan Regular Expressions dalam filter lanjutan Site Audit dan cara mengatur aturan "Include" dan "Exclude" untuk crawl.

Anna avatar
Ditulis oleh Anna
Diperbarui lebih dari satu minggu yang lalu

Regular expressions (juga dikenal sebagai REGEX atau REGEXP) membantu Anda menemukan URL atau teks yang cocok dengan pola tertentu.

💡REGEX didukung di Site Explorer, Site Audit dan endpoint tertentu dalam API kami:

Pelajari lebih lanjut tentang semua tempat di mana Anda dapat menggunakannya.

Cara Kerja REGEX

Mari kita beralih dari contoh yang paling sederhana ke yang lebih canggih.

Konfigurasi berikut mencakup semua URL yang mengandung kata "blog" dan mengecualikan URL yang mengandung kata "product".

Ini menginstruksikan bot kami untuk melakukan crawl:
https://ahrefs.com/blog
https://ahrefs.com/blog/seo-techniques/
https://ahrefs.com/academy/blogging-for-busines

Dan untuk mengabaikan:
https://ahrefs.com/blog/category/product-blog/
https://ahrefs.com/blog/ecommerce-out-of-stock-products/

Itu mudah, bukan?

Tapi bagaimana jika Anda ingin menyertakan URL dari subfolder /blog/ secara spesifik tetapi bukan https://ahrefs.com/academy/blogging-for-business?

Anda dapat menggunakan pola yang sedikit lebih canggih:

Anda mungkin bertanya-tanya apa arti simbol-simbol sebelum dan sesudah "blog" itu.

Di dalam regex, Anda harus "escape" beberapa simbol agar tidak dikenali sebagai karakter khusus. Untuk melakukannya, gunakan backslash \ sebelum karakter tersebut.

Titik sederhana . dalam regex, misalnya, berarti karakter apa pun. Tapi \. berfungsi sebagai simbol titik. Itsebabnya saya meng-escape karakter garis miring dalam contoh di atas seperti ini: \/

Cara Ahrefs Menangani Beberapa Ekspresi REGEX

Harap dicatat bahwa Anda dapat menerapkan beberapa pola untuk menyertakan atau mengecualikan URL dalam pengaturan crawl di Site Audit. Jika tidak ditemukan kecocokan untuk salah satu aturan, aturan tersebut akan dilewati.

Aturan di atas akan menginstruksikan crawler kami untuk melakukan crawl pada URL yang mengandung kata:

"blog" atau "product"

DAN tidak mengandung kata:

"blogging" atau "productive."

Untuk beberapa aturan URL rewrite, setiap aturan baru dieksekusi secara berurutan pada hasil rewrite sebelumnya.

Token Regex yang Berguna

^ - simbol ini menunjukkan awal URL

$ - simbol ini menunjukkan akhir URL

. - titik desimal cocok dengan karakter tunggal apa pun

* - cocok dengan ekspresi sebelumnya 0 atau lebih kali

+ - cocok dengan 1 atau lebih dari yang sebelumnya

? - Cocok dengan 0 atau 1 dari yang sebelumnya

| - setara dengan OR.

[__] - mirip dengan |, tetapi dapat digunakan untuk menentukan rentang

(__) - tanda kurung mengelompokkan regex di antara mereka

\d - cocok dengan satu digit

\D - cocok dengan satu non-digit

\w - cocok dengan karakter kata

\W - cocok dengan karakter bukan kata

Tools dan platform yang berbeda mungkin menggunakan pustaka regex yang berbeda. Site Audit kami menggunakan RE2. Anda dapat menemukan sintaks lengkapnya di sini.

Beberapa Contoh Praktis

1. URL Https di subfolder /wp-content/

^https:.*\/wp-content\/

^ menunjukkan awal URL. Aturan ini akan cocok dengan semua URL yang dimulai dengan "https:" diikuti oleh 0 hingga sejumlah karakter .* sebelum "/wp-content/".

URL yang cocok dengan pola:
https://ahrefs.com/blog/wp-content/uploads/2019/03/fb-ranking-1-image-1.png

URL yang tidak cocok dengan pola:
http://ahrefs.com/blog/wp-content/uploads/2019/03/fb-ranking-1-image-1.png

2. URL dalam subfolder, termasuk URL direktori itu sendiri.

\/blog(\/.*)?$

Aturan ini akan cocok dengan semua URL yang berakhir $ dengan "/blog", secara opsional diikuti oleh garis miring dan 0 hingga sejumlah karakter (\/.*)?. Tanda tanya dalam pola ini cocok dengan ekspresi dalam kurung antara nol dan satu kali, membuatnya opsional.

URL yang cocok dengan pola:
https://ahrefs.com/blog
https://ahrefs.com/blog/301-redirects/

URL yang tidak cocok dengan pola:
https://ahrefs.com/blogging
https://ahrefs.com/academy/blogging-for-business

3. URL yang mengandung simbol @ atau %

@|% atau [@%]

| dan [__] berfungsi sebagai OR

URL yang cocok dengan pola:
https://ahrefs.com/@timsoulo
https://ahrefs.com/%D1%81%D0%B5%D0%BE

URL yang tidak cocok dengan pola:
https://ahrefs.com/blog/nofollow-links

4. URL "Add to Cart" di Woocommerce

\?add-to-cart=

Ingatlah bahwa ? adalah simbol khusus dalam regex. Untuk menggunakannya sebagai tanda tanya sederhana, jangan lupa untuk meng-escape-nya seperti ini: \?

URL yang cocok dengan pola:
https://yourdomain.com/?add-to-cart=25

URL yang tidak cocok dengan pola:
https://yourdomain.com/smartphones

5. URL yang mengandung tahun (4 digit)

[0-9]{4} atau \d{4}

[0-9]{4} akan cocok dengan semua URL yang mengandung empat {4} digit [0-9] berturut-turut

\d{4} melakukan hal yang sama karena \d berarti satu digit

URL yang cocok dengan pola:
https://yourdomain.com/best-smartphones-2019

URL yang tidak cocok dengan pola:
https://yourdomain.com/smartphones

6. Semua URL dari subdomain (baik http maupun https)

^https?:\/\/help.ahrefs.com

Aturan ini akan cocok dengan semua URL yang dimulai dengan "http://help.ahrefs.com" atau "https://help.ahrefs.com".

Tanda tanya di sini s? menunjukkan bahwa "s" adalah opsional, sehingga baik http maupun https akan cocok dengan aturan ini.

URL yang cocok dengan pola:
https://help.ahrefs.com
http://help.ahrefs.com/
http://help.ahrefs.com/site-audit

URL yang tidak cocok dengan pola:
https://ahrefs.com/site-audit
ftp://help.ahrefs.com

7. Berbagai URL file

\.(jpg|gif|bmp|png|css|pdf)$

Aturan ini akan cocok dengan semua URL yang berakhir $ dengan .jpg ATAU .gif ATAU .bmp ATAU .png ATAU .css ATAU .pdf.

Anda dapat mengurangi ekspresi ini untuk menargetkan jumlah ekstensi yang lebih sedikit. Misalnya, untuk hanya URL yang berakhir $ dengan .jpg ATAU .png saja:


.*\.(jpg|png)$

Tanda kurung (__) mengelompokkan regex di antara mereka dan | berarti OR

URL yang cocok dengan pola:
https://ahrefs.com/blog/wp-content/uploads/2019/03/fb-ranking-1-image-1.png
http://ahrefs.com/blog/wp-content/uploads/2019/03/fb-ranking-1-image-1.png

URL yang tidak cocok dengan pola:
https://ahrefs.com/site-audit

8. Menggunakan aturan URL rewrite untuk melakukan crawl website staging di Site Audit

Anda dapat menggunakan aturan URL rewrite dalam pengaturan Site Audit untuk mengganti beberapa bagian URL dengan nilai lain.

Mis. Ketika website staging Anda berbasis pada subdomain, mis. staging.ahrefs.com

Aturan ini akan mengganti "ahrefs.com" di setiap URL dengan "staging.ahrefs.com"

9. Menggunakan aturan URL rewrite dengan grup penangkap bernomor

Dengan grup penangkap, Anda dapat mengganti beberapa bagian URL dengan satu aturan.

Pola untuk dicocokkan:

www\.ahrefs\.com([^\?|#]*)?([#]?[^\?]*)\??(.*)

Ganti dengan:

www.ahrefs.com\1?parameter1=5273&\2?parameter2=7465&\3

([^\?|#]*) adalah grup penangkap ke-1

([#]?[^\?]*) adalah grup penangkap ke-2

(.*) adalah grup penangkap ke-3

\1?parameter1=5273&\2\3

mengganti nilai untuk grup penangkap ke-1 dengan "?parameter1=5273"

\2?parameter2=7465& mengganti nilai untuk grup penangkap ke-2 dengan "?parameter2=7465&"

\3 menyisipkan nilai yang cocok dengan grup penangkap ke-3

6. Filter untuk teks yang lebih panjang dari 50 karakter

^[\s\S]{50,}$

Sumber Daya Lainnya

Saya harap artikel ini membantu Anda mempelajari beberapa trik keren yang dapat Anda lakukan dengan Regular Expressions.

Anda dapat menguji Regex Anda di website ini: https://regex101.com/. Perhatikan bahwa Anda harus memilih "Golang" dari menu kiri.

Apakah pertanyaan Anda terjawab?