Zephyrnet Logosu

Normal İfadelerle JavaScript'te Telefon Numaralarını Doğrulayın

Tarih:

Giriş

Farkında olun ya da olmayın, veriler günlük hayatımızın çok önemli bir parçası haline geldi. Çevrimiçi yemek siparişinden kedi maması aramaya kadar sürekli olarak veri gönderip alıyoruz. Web uygulamalarının geliştiricileri olarak, veritabanının verileri doğru bir şekilde anlaması ve uygulamanın sağlam kalması için kullanıcı girdilerinin belirtilen formatta olmasını sağlamak bizim sorumluluğumuzdur.

Telefon numarası doğrulaması, verilerin tüm veritabanında tutarlı bir biçimde kaydedilmesini sağladığı için önemlidir. Örneğin, kullanıcıların telefon numaralarından önce ülke kodunu girmeleri gerekip gerekmediği konusunda açıklamaya ihtiyaçları olabilir. Doğru doğrulama yapıldığında, kullanıcılar gerekli olup olmadığını kolayca belirleyebilir. Benzer şekilde, kullanıcılardan ne bekleyeceğinizi bildiğiniz ve buna göre mantık uygulayabildiğiniz için kullanıcı deneyimi tutarlı bir formatla gelişir. Tutarsız veriler nedeniyle kodun daha sonraki bir aşamada bozulması kullanıcılar için kötü bir deneyim olacaktır.

Düzenli ifadeler, kalıp eşleştirme için güçlü araçlardır. Kullanım durumunuza bağlı olarak çeşitli türlerdeki kalıpları eşleştirme esnekliği sağlarlar. Ek olarak, normal ifadeler dilden bağımsızdır ve temel doğrulamayı kolayca entegre edebileceğiniz için doğrulama mantığınızı daha taşınabilir hale getirir. JavaScript'te normal ifadeyle çalışmak basit bir iştir.

Bu makale, uygulamanız için telefon numaralarını doğrulamak üzere normal ifadelerin gücünü nasıl kullanacağınızı anlamanıza yardımcı olacaktır. Telefon numaralarını ülke kodlarıyla doğrulamak için basit bir JavaScript işlevi yazacaksınız.

Normal İfade Nedir?

Basit bir ifadeyle, düzenli bir ifade, belirli bir dizide önceden tanımlanmış bir kalıpla eşleşir. Programlama dillerinde yaygın olarak kullanılır ve öncelikle belirli bir formattaki girdileri doğrulamak için kullanılır. Ayrıca, düzenli ifadeler, belirtilen kalıpları aramak, bölmek ve değiştirmek için yaygın olarak kullanılır.

Diyelim ki bir belgede bir e-posta adresi bulmak istiyorsunuz. E-posta adresi herhangi bir adres olabilir, belirli bir adres olmayabilir. Bir e-posta adresinin yapısını zaten bildiğiniz için basit bir ifade yazmak, kalıbı hızlı bir şekilde bulmanıza yardımcı olacaktır.

Bir normal ifade, farklı kalıp türlerini belirtmek için özel karakterler kullanır. Örneğin:

  • . (nokta), herhangi bir karakterle eşleşebilen özel bir karakterdir.
  • * (yıldız) önceki karakterle 0 veya daha fazla kez eşleşir.
  • + (artı), önceki karakterle bir veya daha fazla kez eşleşir.
  • ? (soru işareti), önceki karakteri isteğe bağlı yapar.
  • [abc] herhangi bir karakterle eşleşir a, bya da c.
  • (abc) karakterleri birlikte gruplandırır.
  • ^ (şapka) satırın başlangıcıyla eşleşir.
  • $ (dolar) satırın sonuyla eşleşir.

Bunlar sadece birkaçı. Daha derine dalmak ve daha fazla model hakkında bilgi edinmek istiyorsanız, başvurabilirsiniz. Microsoft'tan bu belge.

Belirli bir sayı kümesinin beş basamaklı bir posta kodu olup olmadığını kontrol eden bir düzenli ifade oluşturalım. İfadeyi yazmaya başlamak için ^ (şapka) işareti, satırın başlangıcıyla eşleştiği için. Düzenli bir ifadede, d herhangi bir rakamla ve kıvrık parantez içindeki bir sayıyla ({}) parantez içinde verilen sayıda önceki öğeyle tam olarak eşleşir. Yukarıdaki listeden biliyoruz ki $ satırın sonunu eşleştirmek için kullanılır.

Bu bilgileri birleştirerek aşağıdaki gibi bir düzenli ifade elde ederiz:

/^d{5}$/

Şimdi ifadeyi daha iyi anlamak için aşağıdaki grafiği inceleyelim.

Beş haneli posta koduyla eşleşen normal ifade

Beş Haneli Posta Koduna Uygun Normal İfade

Artık normal ifadeler ve genel yapıları hakkında temel bir anlayışa sahip olduğumuza göre, bu ifadelerin bir JavaScript işlevinde nasıl uygulanabileceğini keşfetmenin tam zamanı.

JavaScript Normal İfadeleri

JavaScript en popüler programlama dili geliştiriciler arasında. Neredeyse tüm web uygulamaları JavaScript gerektirdiğinden, bu dilde normal ifadelerin nasıl kullanılabileceğini anlamak çok önemlidir.

JavaScript'te, RegExp nesne örüntü eşleştirme için kullanılır. Bu nesne iki şekilde kullanılabilir:

  • Bir kalıbın iki eğik çizgi arasında biçimlendirildiği gerçek gösterimi kullanma
  • Yapıcı gösterimi kullanarak, burada bir dize veya RegExp nesne geçti

Değişmez gösterim şu kadar basit bir şekilde kullanılabilir:

const expr = /^d{5}$/i;

Öte yandan, yapıcı notasyonu ile, kullanmanız gerekecek RegExp bir örneğini oluşturmak için yapıcı. İşte nasıl göründüğü:

const expr = new RegExp(/^d{5}$/, "i");

RegExp nesnesi hakkında daha fazla bilgiyi şuradan okuyabilirsiniz: resmi MDN belgeleri. Şimdi, telefon numarası doğrulamanın önemini ve bir telefon numarasının çeşitli bileşenlerini keşfedelim.

Telefon Numarası Doğrulama ve Bileşenleri

Telefon numaralarını veritabanınıza kaydederken müşteri tarafında telefon numaralarını doğrulamak çok önemlidir. Uygun doğrulama olmadan, kodunuz beklenmeyen davranışlar sergileyebilir.

En iyi uygulamalar, endüstri tarafından kabul edilen standartlar ve dahil edilen hile sayfası ile Git'i öğrenmek için uygulamalı, pratik kılavuzumuza göz atın. Googling Git komutlarını durdurun ve aslında öğrenmek o!

Örneğin, telefon numarasıyla birlikte ülke kodunu da gerektiren bir hizmet kullandığınızı, ancak doğrulama eksikliği nedeniyle kullanıcılarınızın onları dahil etmediğini varsayalım. Artık sadece numaran var olmadan ülke kodu ve SMS metin mesajları gönderen bir hizmet bu nedenle başarısız olabilir. Bu sadece varsayımsal bir senaryo. Diğer sorunlar uygulamanızı bile çökertebilir. Veritabanınızda temiz ve tutarlı veriler kaydetmenizi sağlamak için ön uçta verilerinizi düzgün bir şekilde işlemek çok önemlidir.

Genel olarak, bir telefon numarası dört bölümden oluşur:

  • Ülke kodu: İlk 1 ila 3 hane (ülkeye bağlı olarak) telefon numarasının ülkesini tanımlar. Bu kod, aramanın doğru ülkeye yönlendirilmesini sağlar. Bir ülke kodu 0 ile başlayamaz.

Şu anda düzenlemekte olduğunuz makalenin başlığı “Normal İfadelerle JavaScript'te Telefon Numaralarını Doğrulayın”. Düzenlenecek metin yığını:

  • Alan kodu: Şehir veya arama kodu olarak da bilinen numaranın bu kısmı, aramanın ülke içinde doğru coğrafi bölgeye yönlendirilmesine yardımcı olur. Amerika Birleşik Devletleri gibi bazı ülkelerde alan kodları, belirli bir hizmet için belirli bir telefon numarası grubunu da belirtebilir. Ek olarak, Kuzey Amerika'da alan kodu 0 veya 1 ile başlayamaz.
  • Telefon ön eki: Bu numara dizisi, telefon şirketi tarafından belirli bir merkez ofise veya telefon santraline atanır ve belirli coğrafi alanı veya mahalleyi daha da daraltır.
  • Hat numarası: Bu, önek alanındaki bir ev veya iş yeri için belirli telefon hattına atanan benzersiz numaradır. Numaranın bu kısmı genellikle bir ülke, bölge ve önek içindeki her telefon numarasının benzersiz olmasını sağlar.

Ülke kodu hariç, geri kalan bölümlerin birleştirilmesi, alan kodu ve telefon önekinin üçer, hat numarasının dört basamaklı olduğu on basamaklı bir telefon numarası verir.

Şimdi normal ifadeler kullanarak bu ölçütlere dayalı olarak bir telefon numarasını doğrulayan bir JavaScript işlevi yazmaya geçelim.

Telefon Numarası Doğrulaması için Normal İfade Oluşturma

Bir telefon numarasının temel yapısını zaten anladık. Ayrıca düzenli ifadeleri ve bunların JavaScript'te nasıl kullanılabileceğini öğrendik. Bu bölümde, verilen biçimdeki telefon numaralarını doğrulayan basit bir JavaScript işlevi yazacağız:

COUNTRY_CODE-AREA_CODE-TELEPHONE_PREFIX-LINE_NUMBER

Örneğin fonksiyonumuz için geçerli bir telefon numarası şu şekilde olacaktır. +123-456-789-1234Ama +012-123-456-7890 or +12-123-456-789, çünkü bu telefon numaraları daha önce tartıştığımız telefon numaralarının kurallarına uymuyor.

Şimdi normal ifadeyi yazmaya geçelim. Öncelikle, ülke kodunun 1 ila 3 hane uzunluğunda olup olmadığını ve sıfır ile başlayıp başlamadığını kontrol edelim.

Normal ifadenin başlangıcını belirtmek için bir şapka (^), ardından başlangıçta bir artı olduğunu doğrulayın. Bu amaçla kullanalım +, bu, artının başlangıçta var olmasıyla eşleşecektir. Şimdi ülke kodunun rakamlarının bir ile üç hane arasında olması ve ilk hanenin sıfır olmaması için şöyle bir şey yazabiliriz: [1-9]{1}[0-9]{0,2}. İşte, [1-9]{1} 1'den 9'a kadar olan herhangi bir rakamın tam olarak bir kez bulunabileceğini belirtir ve benzer şekilde, [0-9]{0,2} 0'dan 9'a kadar herhangi bir rakamın sıfır ila iki kez bulunabileceğini gösterir.

Ayırıcı için bir tane ekleyebiliriz. - (tire) sayının bölümleri arasında. Bir - ülke kodu doğrulamasından sonra eklenebilir. Yani, bu noktada, normal ifade şöyle görünür:

^+[1-9]{1}[0-9]{0,2}-$

The $ at the end satırın sonunu belirtir. Şimdi, alan kodu için bu oldukça benzer olacaktır. Bir alan kodu sıfır veya bir ile başlayamaz. Yani, ilk bölüm olacak [2-9]{1}. Bu, ilk sayının 2 ile 9 arasında olmasıyla eşleşir. Bu eşleştirme bir kez gerçekleşir. Ardından, kodun geri kalanı için yazabiliriz. [0-9]{2}. Bu, birinciden sonra tam olarak iki basamak olmasını ve her basamak için aralığın 0 ile 9 arasında olmasını sağlayacaktır. Yine, tire ayırıcıyı sonuna ekleyin.

Şimdi, tam normal ifade şöyle görünecek:

^+[1-9]{1}[0-9]{0,2}-[2-9]{1}[0-9]{2}-$
|----Country Code---|-|---Area Code--|-|

Telefon önekini kontrol etmek için aynı kalıbı tekrar kullanalım. Telefon önekinin de sıfır veya bir ile başlayamayacağını varsayalım. Yani, ekleme [2-9]{1}[0-9]{2} ve yine kısa çizgi, ifadeyi şu şekilde yapar:

^+[1-9]{1}[0-9]{0,2}-[2-9]{1}[0-9]{2}-[2-9]{1}[0-9]{2}-$
|----Country Code---|-|---Area Code--|-|--Tel Prefix--|-|

Şimdi kalan tek kısım, uzunluğu tam olarak dört olan herhangi bir rakam olabilen satır numarasıdır. Bu diğerlerinden daha basit. ifade [0-9]{4}.

Tam ifade aşağıdaki gibidir:

^+[1-9]{1}[0-9]{0,2}-[2-9]{1}[0-9]{2}-[2-9]{1}[0-9]{2}-[0-9]{4}$
|----Country Code---|-|---Area Code--|-|--Tel Prefix--|-|-Line-|

Kaşlı ayraçların sık kullanıldığını fark etmişsinizdir. Ayraç içinde sağlanan örnekleri eşleştirmek için kullanılırlar. Belirli bir rakamsa, örneğin {1}, önceki kalıpla tam olarak bir kez eşleşir. Ancak, eğer bir aralık ise, {0, 2}, minimum ve maksimum eşleşme sayısını tanımlar. Yani, durumunda {0, 2}, desenle en az sıfır kez ve en fazla iki kez eşleşir.

Desen hazır. Artık normal ifadeyi kullanarak bir telefon numarasının geçerli olup olmadığını kontrol etmek için basit bir JavaScript işlevi yazabiliriz. İşte işlev:

function validatePhoneNumber(phoneNumber) { const pattern = new RegExp("^+[1-9]{1}[0-9]{0,2}-[2-9]{1}[0-9]{2}-[2-9]{1}[0-9]{2}-[0-9]{4}$"); if (pattern.test(phoneNumber)) { console.log("Phone number is valid"); return true; } else { console.log("Phone number is not valid"); return false; }
} validatePhoneNumber("+123-456-789-1234"); validatePhoneNumber("+0-123-456-7890"); validatePhoneNumber("+12-012-123-1234"); 

İşlev oldukça basittir. Giriş olarak bir telefon numarası alır. Düzenli ifade modeli, adı verilen bir değişkenin içinde saklanır. pattern. Model, RegExp yapıcısı kullanılarak ve ifadeyi yapıcıya bir parametre olarak ileterek başlatılır. Ardından, telefon numarasını kullanarak test ediyoruz. test nesnede bulunan yöntem. Bir if-else ifadesi kullanarak, telefon numarasının testi geçip geçmediğini kontrol ederiz. Olursa, true değerini döndürürüz ve şunu belirten bir konsol mesajı göndeririz: Phone number is valid. Aksi takdirde false döndürür ve telefon numarasının geçerli olmadığını belirten bir konsol mesajı görüntüler.

Bununla, gitmekte fayda var. Artık geçerli olup olmadıklarını görmek için telefon numaralarınızı test edebilirsiniz.

Özet

Bu makale, normal ifadelere, kullanımlarına ve telefon numaralarını doğrulamak için nasıl uygulanabileceklerine kısa bir genel bakış sağlamayı amaçladı. Ayrıca bir telefon numarasının çeşitli bileşenlerini ve her bileşenin nasıl test edilebileceğini tartıştık.

Düzenli ifadeler hakkında temel bir anlayışla, artık ek kalıpları keşfedebilirsiniz. gibi araçları da kullanabilirsiniz. normal ifade101 ifadelerinizi çevrimiçi olarak doğrulamak için.

spot_img

En Son İstihbarat

spot_img

Bizimle sohbet

Merhaba! Size nasıl yardım edebilirim?