Formlarda düzenli ifade yazmadan telefon numarası doğrulama

Telefon numaraları, formlarda en sık hatalı girilen alandır. Eksik bir rakam, araya karışan bir harf, boşluklarla yapıştırılmış bir numara veya üç farklı şekilde yazılmış uluslararası bir önek... Eğer bu liste mesaj göndermek veya insanları geri aramak için kullanılıyorsa, hatalı her numara ulaşamadığınız bir kişi demektir ve bunu ancak mesajınız başarısız olduğunda fark edersiniz.

Bunun standart çözümü, geçerli bir numaranın tam olarak nasıl görünmesi gerektiğini belirten ve desen (veya düzenli ifade/regex) adı verilen bir yapıdır. Sorun şu ki, form oluşturanların çoğu bunu yazamaz. Bu makale, bir desen yazmadan nasıl doğru desene sahip olacağınızı ve bu desenin neleri kabul edip neleri etmeyeceğini gösterir; böylece formunuz için uygun olup olmadığına karar verebilirsiniz.

Neleri kabul edeceğinize karar verin

Çoğu durumda şu üç soru kararı netleştirir:

  1. Ulusal bir cep telefonu numarası mı yoksa dünyanın herhangi bir yerinden bir numara mı? Bir cep telefonu numarasının her ülkede belirli bir başlangıcı ve uzunluğu vardır. Uluslararası numaralar ise değişkenlik gösterir.
  2. Ülke koduna ihtiyacınız var mı? Yanıtlar tek bir ülkeden geliyorsa, ulusal format kullanıcıların yazması için daha basittir.
  3. Boşluklara ve tire işaretlerine izin veriliyor mu? Aşağıdaki hazır formatlar için cevap hayırdır: yalnızca rakamlar. İnsanların bunu bilmesi için sorunun yardım metninde bunu belirtin.

Hazır formatlar

Bir alanın desen kutusunun yanında bulunan Desen yardımcısı, tam olarak bunun için şu formatları sunar:

  • Cep telefonu numarası. İki ayar: başlangıç değeri ve toplam rakam sayısı. 07 ile başlayan ve toplam on haneli bir numara için başlangıca 07, toplam haneye 10 yazarsanız, yardımcı sizin için ^07[0-9]{8}$ desenini oluşturur: 07 ve ardından tam olarak sekiz rakam daha.
  • Uluslararası telefon numarası. İki ayar: en az ve en çok rakam sayısı (varsayılan olarak 8 ve 15) ve isteğe bağlı bir + işareti. Bu desen ^\+?[0-9]{8,15}$ şeklinde yazılır.
  • Sabit uzunlukta sayı, belirli bir uzunlukta sayıya ihtiyaç duyduğunuz durumlar için; Yalnızca rakamlar ise sadece rakamların önemli olduğu durumlar içindir.

Birini seçin, ayarlarını yapın ve Bunu kullan düğmesine basın. Desen ve bir hata mesajı sizin için otomatik olarak doldurulacaktır.

Yayınlamadan önce test edin

Aynı pencerede yer alan Bir değer deneyin seçeneği, bir yanıt yazmanıza ve hangi formatların bunu kabul ettiğini görmenize olanak tanır. Gerçekten yaşanabilecek durumları test edin:

Yazdığınız değer 07 ile başlayan 10 haneli cep no
0791234567 kabul edildi
079123456 (bir rakam eksik) reddedildi
0791234567abc (sonunda harfler var) reddedildi
079 123 4567 (boşluklu) reddedildi

Desen, yanıtın tamamıyla eşleşmelidir; üçüncü satırın başarısız olmasının nedeni budur: bir numara ile başlasa bile, ardından harf gelen bir ifade geçerli bir numara değildir.

Dikkat etmeniz gereken üç şey

Arap rakamlarıyla yazılanlar. Hazır formatlar 0'dan 9'a kadar olan rakamları kabul eder. Arap-Hint rakamlarıyla (٠٧٩١٢٣٤٥٦٧) yazılan bir numara, bir insan için aynı anlama gelse bile reddedilir. Bunun olup olmayacağı klavye ve telefon ayarlarına bağlıdır; ancak katılımcılarınızın bu türde yazma ihtimali varsa, yardım metnine "numarayı 0-9 arası rakamlarla yazın" notunu ekleyin.

Boşluklar ve tireler. 079 123 4567 ifadesi de reddedilir. İnsanlara numarayı boşluksuz yazmalarını söyleyin veya daha esnek olmak istiyorsanız kutuya kendi deseninizi yazın.

Ülke kuralları. Formatlar geneldir: başlangıç rakamlarını ve uzunluğu siz seçersiniz. Pulseform ulusal numaralandırma planlarının bir listesini sunmaz, bu nedenle ayarları yapmadan önce ülkeniz için doğru başlangıç ve uzunluk değerlerini (örneğin telekomünikasyon düzenleyicisi veya bir operatör aracılığıyla) kontrol edin. Ardından desenin sadece kural kadar katı olması yeterlidir.

Nerede uygulanır?

Desen; herkese açık bağlantıda, uygulama içi doldurma sayfasında ve bir CSV dosyası içe aktardığınızda (hatalı numaraya sahip satırlar atlanır ve raporlanır) kontrol edilir. Bağlantı olmadan kullanılan Collect uygulamasında kontrol edilmez, çünkü çevrimdışı bir telefon desenleri güvenilir bir şekilde değerlendiremez. Bir toplayıcının yanıtı her zaman kaydedilir ve numara desene uymuyorsa işaretlenir, böylece bu kayıtları filtreleyebilir ve düzeltmek için geri arayabilirsiniz.

Deseni başka bir yerde kullanma

Yukarıdaki desenler standart düzenli ifade sözdizimiyle yazılmıştır, bu nedenle bunları düzenli ifadeleri kabul eden herhangi bir araca kopyalayabilirsiniz. Araçlar küçük farklılıklar gösterebileceğinden, önce aynı değerlerle orada test edin. Sadece desene ihtiyacınız varsa, ücretsiz desen oluşturucumuz hesap gerektirmeden sizin için deseni yazar.

Pulseform içinde

Desen kutusu ve yardımcı için form oluşturma ve alan kuralları bölümüne, sahadan gelen kayıtlar için ise desene uymayan yanıtlar bölümüne bakın. Daha geniş bir bakış açısı için form verisi doğrulama makalesini inceleyebilirsiniz.

Kendi verilerinizle deneyin

Bir anket veya form oluşturun ve yanıtlar geldikçe sonuçları görün.

14 günlük ücretsiz denemeyi başlatın