Saya mencoba untuk menghentikan spammer yang menggunakan domain pendek bit.ly dll. Domain yang mereka posting sepertinya hanya dua karakter (bukan .com, dll). Saya telah menggunakan ini:

\.[a-z][a-z]$

Tapi, ini memiliki dua masalah: cocok dengan .co.uk Jika ada yang setelah domain, itu tidak cocok (spasi atau garis miring, contoh: bit.ly/2231)

Bisakah seseorang membantu saya dengan regex yang akan menyelesaikan ini?

0
Jason 3 Juni 2020, 06:58

1 menjawab

Jawaban Terbaik

Pencocokan seluruh URL. Tergantung pada domain yang sebelum protokol garis miring ke depan pertama. Yang pertama digunakan jika hanya memiliki satu titik di url dan diakhiri dengan dua karakter TLD utama. Yang kedua menggunakan tampilan negatif di belakang untuk memastikan itu bukan sesuatu seperti .co.uk.

https://regex101.com/r/5acu56/2

^(https?:\/\/)?[^\/.]+\.[a-z][a-z](\/|\s*$)

https://regex101.com/r/p8Ajw9/2

^(https?:\/\/)?[^\/]+(?<!\.[a-z][a-z])\.[a-z][a-z](\/\s*|\s*$)
0
user120242 3 Juni 2020, 04:57