Programlama, yapılandırılmış ve yapılandırılmamış metinsel verilerle uğraşmayı kolaylaştırmıştır. Normal ifadeler ve harici kitaplıklar gibi araçlar, bu görevleri çok daha kolaylaştırır.

Normal bir ifade kullanarak URL'leri doğrulamak için Python ve JavaScript dahil olmak üzere çoğu dili kullanabilirsiniz. Bu örnek normal ifade mükemmel değildir, ancak basit kullanım durumları için URL'leri kontrol etmek için kullanabilirsiniz.

Bir URL'yi Doğrulamak İçin Normal İfade

Bu makalede sunulan bir URL'yi doğrulamak için kullanılan normal ifade mükemmel değil. Bu normal ifade doğrulamasında başarısız olabilecek birden çok geçerli URL örneği olabilir. Bu, IP adreslerini, ASCII olmayan karakterleri ve FTP gibi protokolleri içeren URL'leri içerir. Aşağıdaki normal ifade yalnızca en yaygın URL'leri doğrular.

Normal ifade, aşağıdaki koşulları karşılaması durumunda bir URL'yi geçerli olarak kabul eder:

  1. Dize ya ile başlamalıdır http veya https bunu takiben ://.
  2. Alt alanın ve alanın toplam uzunluğu 2 ile 256 arasında olmalıdır. Yalnızca alfasayısal karakterler ve/veya özel karakterler içermelidir.
  3. instagram viewer
  4. TLD (Üst Düzey Etki Alanı) yalnızca alfabetik karakterler içermeli ve iki ila altı karakter uzunluğunda olmalıdır.
  5. URL dizesinin sonu, alfasayısal karakterler ve/veya özel karakterler içerebilir. Ve sıfır veya daha fazla kez tekrar edebilir.

Aşağıdaki normal ifadeyi kullanarak bir URL'yi JavaScript'te doğrulayabilirsiniz:

^(http (ler):\/\/.)[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$

Benzer şekilde, Python'da bir URL'yi doğrulamak için aşağıdaki normal ifadeyi kullanabilirsiniz:

^((http|https)://)[-a-zA-Z0-9@:%._\\+~#?&//=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%._\\+~#?&//=]*)$

Nerede:

  • (http|https)://) dizenin http veya https ve ardından :// ile başlamasını sağlar.
  • [-a-zA-Z0-9@:%._\\+~#?&//=] alfasayısal karakterleri ve/veya özel karakterleri belirtir. Bu kümenin ilk örneği, alt alan ve etki alanı kısmında izin verilecek karakter kümesini temsil eder. Bu kümenin ikinci örneği ise sorgu dizesinde veya alt dizin bölümünde izin verilecek karakter kümesini temsil eder.
  • {2,256} 2 ila 256 (her ikisi de dahil) kez oluşum göstergesini temsil eder. Bu, alt alan ve etki alanının toplam uzunluğunun iki ile 256 arasında olması gerektiğini gösterir.
  • \. nokta karakterini temsil eder.
  • [a-z]{2,6} a'dan z'ye kadar iki ile altı arasında uzunlukta küçük harfler anlamına gelir. Bu, üst düzey etki alanı bölümünde izin verilecek karakter kümesini temsil eder.
  • \B bir kelimenin sınırını, yani bir kelimenin başlangıcını veya sonunu temsil eder.
  • * sorgu dizesinin, parametrelerin veya alt dizinlerin sıfır veya daha fazla kopyasını gösteren bir yineleme işlecidir.
  • ^ Ve $ sırasıyla dizinin başlangıcını ve sonunu gösterir.

Yukarıdaki ifadeden rahatsızsanız, kontrol edin düzenli ifadeler için başlangıç ​​kılavuzu Birinci. Normal ifadelere alışmak biraz zaman alır. Gibi bazı örnekleri keşfetmek normal ifadeler kullanarak kullanıcı hesabı ayrıntılarını doğrulama yardım etmelisin.

Yukarıdaki normal ifade, aşağıdaki URL türlerini karşılar:

  • https://www.something.com/
  • http://www.something.com/
  • https://www.something.edu.co.in
  • http://www.url-with-path.com/path
  • https://www.url-with-querystring.com/?url=has-querystring
  • http://url-without-www-subdomain.com/
  • https://mail.google.com

Normal İfadeyi Bir Programda Kullanmak

Bu projede kullanılan kod bir GitHub deposu ve MIT lisansı altında ücretsiz olarak kullanabilirsiniz.

Bu, bir URL'yi doğrulamak için bir Python yaklaşımıdır:

içe aktarmak tekrar

kesindoğrulamaURL'si(url):
normal ifade = "^((http|https)://)[-a-zA-Z0-9@:%._\\+~#?&//=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%._\\+~#?&//=]*)$"
r = yeniden derleme (normal ifade)

eğer (tekrar.aramak(R, url)):
Yazdır("Geçerli")
başka:
Yazdır("Geçerli değil")

url1 = "https://www.linkedin.com/"
doğrulamaURL(url1)
url2 = "http://apple"
doğrulamaURL(url2)
url3 = "iywegfuykegf"
doğrulamaURL(url3)
url4 = "https://w"
doğrulamaURL(url4)

Bu kod Python'un yeniden derleme() düzenli ifade modelini derleme yöntemi. Bu yöntem, normal ifade kalıbını bir dize parametresi olarak kabul eder ve bir normal ifade kalıbı nesnesi döndürür. Bu düzenli ifade kalıbı nesnesi, ayrıca, araştırma() yöntem.

En az bir eşleşme bulursa, araştırma() method ilk eşleşmeyi döndürür. Hedef dizgedeki kalıpla tüm eşleşmeleri aramak istiyorsanız, re.findall() yöntem.

Yukarıdaki kodu çalıştırmak, ilk URL'nin geçerli olduğunu ancak geri kalanının geçerli olmadığını onaylayacaktır.

Benzer şekilde, aşağıdaki kodu kullanarak bir URL'yi JavaScript'te doğrulayabilirsiniz:

işlevdoğrulamaURL'si(url) {
eğer(/^(http(s):\/\/.)[-a-zA-Z0)-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$/g.test (url)) {
konsol.log('Geçerli');
} başka {
konsol.log('Geçerli değil');
}
}

URL'yi doğrula("https://www.linkedin.com/");
URL'yi doğrula("http://apple");
URL'yi doğrula("iywegfuykegf");
URL'yi doğrula("https://w");

Yine, bu kodu çalıştırmak, ilk URL'nin geçerli olduğunu ve geri kalanının geçersiz olduğunu onaylayacaktır. JavaScript'leri kullanır kibrit() hedef dizeyi normal bir ifade modeliyle eşleştirme yöntemi.

Normal İfadeleri Kullanarak Önemli Verileri Doğrulayın

Metin aramak, eşleştirmek veya ayrıştırmak için normal ifadeleri kullanabilirsiniz. Ayrıca doğal dil işleme, kalıp eşleştirme ve sözcüksel analiz için de kullanılırlar.

Kredi kartı numaraları, kullanıcı hesabı ayrıntıları, IP adresleri ve daha fazlası gibi önemli veri türlerini doğrulamak için bu güçlü aracı kullanabilirsiniz.