🛠️

Whiz Tools

Build • Create • Innovate

เครื่องสร้างและตรวจสอบหมายเลขโทรศัพท์สำหรับหลายประเทศ

สร้างหมายเลขโทรศัพท์สุ่มในรูปแบบระหว่างประเทศหรือในประเทศ พร้อมรหัสประเทศและการเลือกภูมิภาค สร้างหมายเลขมือถือหรือหมายเลขโทรศัพท์พื้นฐานด้วยรูปแบบที่ถูกต้องสำหรับการทดสอบและพัฒนา

เครื่องมือสร้างและตรวจสอบหมายเลขโทรศัพท์

📚

เอกสารประกอบ

โทรศัพท์หมายเลข Generator และ Validator

บทนำ

โทรศัพท์หมายเลข Generator และ Validator เป็นเครื่องมือที่ง่ายและใช้งานง่าย ออกแบบมาเพื่อสร้างหมายเลขโทรศัพท์สุ่มในรูปแบบต่างๆ และตรวจสอบโครงสร้างของหมายเลข ไม่ว่าคุณจะต้องการหมายเลขโทรศัพท์ตัวอย่างสำหรับการทดสอบแอปพลิเคชัน การเติมข้อมูลในฐานข้อมูล หรือเพื่อการศึกษา เครื่องมือนี้ให้โซลูชันที่เรียบง่ายโดยไม่ซับซ้อนเกินไป รองรับทั้งรูปแบบระหว่างประเทศและท้องถิ่น หมายเลขมือถือและหมายเลขโทรศัพท์บ้าน และรวมถึงกฎการจัดรูปแบบเฉพาะประเทศเพื่อการสร้างหมายเลขที่ถูกต้อง

การสร้างและตรวจสอบหมายเลขโทรศัพท์เป็นงานที่สำคัญในด้านการพัฒนาโปรแกรม โทรคมนาคม และการจัดการข้อมูล เครื่องมือนี้ทำให้กระบวนการเหล่านี้ง่ายขึ้นโดยการให้ส่วนติดต่อที่ใช้งานง่ายที่อนุญาตให้คุณระบุพารามิเตอร์ เช่น รหัสประเทศ ภูมิภาค และประเภทหมายเลข จากนั้นสร้างหมายเลขโทรศัพท์ที่ถูกต้องตามมาตรฐานสากลและรูปแบบเฉพาะประเทศ

วิธีการทำงาน

โทรศัพท์หมายเลข Generator และ Validator ทำงานโดยการใช้กฎการจัดรูปแบบเฉพาะประเทศเพื่อสร้างหมายเลขโทรศัพท์สุ่มที่มีโครงสร้างถูกต้อง เครื่องมือนี้ปฏิบัติตามขั้นตอนเหล่านี้:

  1. การเลือกพารามิเตอร์: คุณเลือกประเทศ ภูมิภาค และว่าคุณต้องการหมายเลขมือถือหรือหมายเลขโทรศัพท์บ้าน

  2. การกำหนดรูปแบบ: ตามการเลือกของคุณ เครื่องมือจะระบุรูปแบบที่เหมาะสม รวมถึง:

    • รหัสประเทศ (เช่น +52 สำหรับเม็กซิโก)
    • รหัสพื้นที่/ภูมิภาค
    • ความต้องการความยาวหมายเลข
    • รหัสนำสำหรับมือถือหรือโทรศัพท์บ้าน
  3. การสร้างหมายเลขสุ่ม: เครื่องมือจะสร้างเลขสุ่มตามรูปแบบที่กำหนด

  4. การใช้การจัดรูปแบบ: หมายเลขที่สร้างขึ้นจะถูกจัดรูปแบบตามมาตรฐานสากลหรือข้อบังคับท้องถิ่นตามที่คุณต้องการ

  5. การตรวจสอบความถูกต้อง: เครื่องมือตรวจสอบหมายเลขที่สร้างขึ้นเพื่อให้แน่ใจว่ามันปฏิบัติตามโครงสร้างที่ถูกต้องสำหรับประเทศและประเภทที่เลือก

กระบวนการตรวจสอบความถูกต้องจะตรวจสอบหมายเลขกับรูปแบบที่ทราบสำหรับประเทศที่เลือก โดยตรวจสอบด้านต่างๆ เช่น:

  • ความยาวที่ถูกต้อง
  • รหัสประเทศที่ถูกต้อง
  • รหัสพื้นที่/ภูมิภาคที่เหมาะสม
  • รหัสนำที่เหมาะสมสำหรับมือถือหรือโทรศัพท์บ้าน

สูตรและอัลกอริธึม

แม้ว่าการสร้างหมายเลขโทรศัพท์อาจดูเหมือนเป็นกระบวนการสุ่มง่ายๆ แต่การดำเนินการอย่างถูกต้องต้องเข้าใจข้อจำกัดทางคณิตศาสตร์และรูปแบบที่ทำให้หมายเลขโทรศัพท์ถูกต้องในภูมิภาคต่างๆ

อัลกอริธึมการสร้างหมายเลขสุ่ม

อัลกอริธึมพื้นฐานสำหรับการสร้างหมายเลขโทรศัพท์ที่ถูกต้องตามสูตรนี้:

N=C+A+P+SN = C + A + P + S

โดยที่:

  • NN คือหมายเลขโทรศัพท์ทั้งหมด
  • CC คือรหัสประเทศ (ไม่บังคับสำหรับรูปแบบท้องถิ่น)
  • AA คือรหัสพื้นที่/ภูมิภาค
  • PP คือรหัสนำ (ซึ่งอาจมีข้อจำกัดตามประเภทหมายเลข)
  • SS คือหมายเลขผู้ใช้ (เลขสุ่ม)

อัลกอริธึมการตรวจสอบความถูกต้อง

การตรวจสอบความถูกต้องของหมายเลขโทรศัพท์สามารถแสดงเป็นการจับคู่รูปแบบด้วยนิพจน์ปกติ ซึ่งสามารถแสดงทางคณิตศาสตร์ได้ว่า:

1 & \text{ถ้า } N \text{ ตรงกับ } R_c \\ 0 & \text{ถ้าไม่ใช่} \end{cases}$$ โดยที่: - $V(N)$ คือผลลัพธ์การตรวจสอบความถูกต้อง (1 สำหรับถูกต้อง, 0 สำหรับไม่ถูกต้อง) - $N$ คือหมายเลขโทรศัพท์ที่กำลังตรวจสอบ - $R_c$ คือรูปแบบนิพจน์ปกติสำหรับประเทศ $c$ ### ความน่าจะเป็นและการกระจาย เมื่อสร้างหมายเลขโทรศัพท์สุ่ม เราต้องพิจารณาช่วงที่ถูกต้องของตัวเลขสำหรับแต่ละตำแหน่ง ตัวอย่างเช่น ในสหรัฐอเมริกา รหัสพื้นที่ไม่สามารถเริ่มด้วย 0 หรือ 1 และไม่สามารถเป็นรหัสบริการเช่น 911 จำนวนหมายเลขโทรศัพท์ที่ถูกต้องทั้งหมดสำหรับประเทศสามารถคำนวณได้ดังนี้: $$P_c = \prod_{i=1}^{n} d_i$$ โดยที่: - $P_c$ คือจำนวนหมายเลขโทรศัพท์ที่ถูกต้องทั้งหมดสำหรับประเทศ $c$ - $n$ คือจำนวนตำแหน่งในหมายเลขโทรศัพท์ (ไม่รวมรหัสประเทศ) - $d_i$ คือจำนวนตัวเลขที่ถูกต้องสำหรับตำแหน่ง $i$ ตัวอย่างเช่น สำหรับหมายเลขโทรศัพท์ในสหรัฐอเมริกา (ไม่รวมรหัสประเทศ): - ตัวเลขแรกของรหัสพื้นที่: 8 ความเป็นไปได้ (2-9) - ตัวเลขที่สองและสามของรหัสพื้นที่: 10 ความเป็นไปได้แต่ละตัว (0-9) - หมายเลขผู้ใช้เจ็ดตัว: 10 ความเป็นไปได้แต่ละตัว (0-9) $$P_{US} = 8 \times 10 \times 10 \times 10 \times 10 \times 10 \times 10 \times 10 \times 10 \times 10 = 8 \times 10^9 = 8,000,000,000$$ ซึ่งหมายความว่ามีหมายเลขโทรศัพท์ที่ถูกต้องในสหรัฐอเมริกาถึง 8 พันล้านหมายเลข แม้ว่าหลายหมายเลขจะถูกสงวนหรือยังไม่ได้กำหนด ## คุณสมบัติ ### การเลือกประเทศและภูมิภาค เครื่องมือนี้รองรับหลายประเทศแต่ละประเทศมีรูปแบบหมายเลขโทรศัพท์เฉพาะ สำหรับแต่ละประเทศ คุณสามารถเลือกจากภูมิภาคต่างๆ ซึ่งอาจส่งผลต่อรหัสพื้นที่หรือองค์ประกอบการจัดรูปแบบอื่นๆ ประเทศที่รองรับในปัจจุบัน ได้แก่: - เม็กซิโก (+52) - สหรัฐอเมริกา (+1) - สหราชอาณาจักร (+44) - อินเดีย (+91) แต่ละประเทศมีการจัดรูปแบบเฉพาะภูมิภาค ตัวอย่างเช่น ในเม็กซิโก คุณสามารถเลือกภูมิภาคเช่น: - เม็กซิโกซิตี้ (CDMX) - กวาดาลาฮารา (GDL) - มอนเตร์เรย์ (MTY) - คันคูน (CUN) ### รูปแบบระหว่างประเทศและท้องถิ่น เปลี่ยนระหว่างรูปแบบระหว่างประเทศและท้องถิ่น: - **รูปแบบระหว่างประเทศ**: รวมรหัสประเทศด้วยเครื่องหมายบวก (เช่น +52 55 1234 5678 สำหรับเม็กซิโก) - **รูปแบบท้องถิ่น**: แสดงเพียงหมายเลขตามที่โทรในประเทศ (เช่น 55 1234 5678) ### หมายเลขมือถือและหมายเลขโทรศัพท์บ้าน เลือกสร้างหมายเลขมือถือหรือหมายเลขโทรศัพท์บ้าน: - **หมายเลขมือถือ**: ปฏิบัติตามรูปแบบเฉพาะประเทศสำหรับโทรศัพท์มือถือ - **หมายเลขโทรศัพท์บ้าน**: ปฏิบัติตามรูปแบบสำหรับโทรศัพท์พื้นฐาน ตัวอย่างเช่น ในเม็กซิโก: - หมายเลขมือถือมักมี 10 หลัก (รวมรหัสพื้นที่) - หมายเลขโทรศัพท์บ้านอาจมี 8 หลัก (บวกกับรหัสพื้นที่) ### ฟังก์ชันการคัดลอก คัดลอกหมายเลขโทรศัพท์ที่สร้างขึ้นไปยังคลิปบอร์ดของคุณได้อย่างง่ายดายด้วยการคลิกเพียงครั้งเดียว ทำให้สะดวกในการใช้หมายเลขในแอปพลิเคชัน เอกสาร หรือฐานข้อมูลของคุณ ## มาตรฐานรูปแบบหมายเลขโทรศัพท์ ### มาตรฐานระหว่างประเทศ (E.164) E.164 เป็นมาตรฐานระหว่างประเทศสำหรับการจัดรูปแบบหมายเลขโทรศัพท์ ซึ่งจัดตั้งโดยสหภาพโทรคมนาคมระหว่างประเทศ (ITU) มันกำหนดว่าหมายเลขโทรศัพท์ระหว่างประเทศสามารถมีความยาวสูงสุด 15 หลักและควรเขียนด้วยเครื่องหมาย "+" ตามด้วยรหัสประเทศและหมายเลขในประเทศ รูปแบบ: +[รหัสประเทศ] [หมายเลขในประเทศ] <svg width="600" height="200" xmlns="http://www.w3.org/2000/svg"> <title>โครงสร้างรูปแบบหมายเลขโทรศัพท์</title> <desc>แผนภาพแสดงส่วนประกอบของรูปแบบหมายเลขโทรศัพท์ระหว่างประเทศ</desc> <!-- พื้นหลัง --> <rect x="10" y="50" width="580" height="80" fill="#f8fafc" stroke="#64748b" strokeWidth="2" rx="5" /> <!-- ส่วนรหัสประเทศ --> <rect x="20" y="60" width="80" height="60" fill="#dbeafe" stroke="#3b82f6" strokeWidth="2" rx="5" /> <text x="60" y="95" fontFamily="Arial" fontSize="14" textAnchor="middle" fill="#1e40af">+52</text> <text x="60" y="115" fontFamily="Arial" fontSize="10" textAnchor="middle" fill="#1e40af">รหัสประเทศ</text> <!-- ส่วนรหัสพื้นที่ --> <rect x="110" y="60" width="80" height="60" fill="#e0f2fe" stroke="#0ea5e9" strokeWidth="2" rx="5" /> <text x="150" y="95" fontFamily="Arial" fontSize="14" textAnchor="middle" fill="#0369a1">55</text> <text x="150" y="115" fontFamily="Arial" fontSize="10" textAnchor="middle" fill="#0369a1">รหัสพื้นที่</text> <!-- ส่วนหมายเลขแรก --> <rect x="200" y="60" width="120" height="60" fill="#f0fdfa" stroke="#14b8a6" strokeWidth="2" rx="5" /> <text x="260" y="95" fontFamily="Arial" fontSize="14" textAnchor="middle" fill="#0f766e">1234</text> <text x="260" y="115" fontFamily="Arial" fontSize="10" textAnchor="middle" fill="#0f766e">หมายเลขผู้ใช้ (ส่วนที่ 1)</text> <!-- ส่วนหมายเลขที่สอง --> <rect x="330" y="60" width="120" height="60" fill="#ecfdf5" stroke="#10b981" strokeWidth="2" rx="5" /> <text x="390" y="95" fontFamily="Arial" fontSize="14" textAnchor="middle" fill="#047857">5678</text> <text x="390" y="115" fontFamily="Arial" fontSize="10" textAnchor="middle" fill="#047857">หมายเลขผู้ใช้ (ส่วนที่ 2)</text> <!-- ลูกศร --> <line x1="100" y1="90" x2="110" y2="90" stroke="#64748b" strokeWidth="2" /> <line x1="190" y1="90" x2="200" y2="90" stroke="#64748b" strokeWidth="2" /> <line x1="320" y1="90" x2="330" y2="90" stroke="#64748b" strokeWidth="2" /> <!-- ชื่อเรื่อง --> <text x="300" y="30" fontFamily="Arial" fontSize="16" fontWeight="bold" textAnchor="middle" fill="#334155">รูปแบบหมายเลขโทรศัพท์ระหว่างประเทศ (ตัวอย่างเม็กซิโก)</text> </svg> ### รูปแบบเฉพาะประเทศ #### เม็กซิโก (+52) ระบบหมายเลขโทรศัพท์ของเม็กซิโกปฏิบัติตามรูปแบบเหล่านี้: - **หมายเลขมือถือ**: 10 หลักทั้งหมด - รูปแบบ: +52 XX XXXX XXXX - ตัวอย่าง: +52 55 1234 5678 - หมายเลขมือถือในเม็กซิโกมักเริ่มด้วยรหัสพื้นที่เช่น 55 (เม็กซิโกซิตี้), 33 (กวาดาลาฮารา), 81 (มอนเตร์เรย์) - **หมายเลขโทรศัพท์บ้าน**: 8 หลัก (บวกกับรหัสพื้นที่ 2 หลัก) - รูปแบบ: +52 XX XXXX XXXX - ตัวอย่าง: +52 55 5123 4567 #### สหรัฐอเมริกา (+1) - **ทั้งหมายเลขมือถือและหมายเลขโทรศัพท์บ้าน**: 10 หลักทั้งหมด - รูปแบบ: +1 XXX XXX XXXX - รหัสพื้นที่ (สามหลักแรก) แตกต่างกันไปตามภูมิภาค - หมายเลขมือถือและหมายเลขโทรศัพท์บ้านปฏิบัติตามรูปแบบเดียวกันแต่มีรหัสนำที่แตกต่างกัน #### สหราชอาณาจักร (+44) - **หมายเลขมือถือ**: มักเริ่มด้วย '7' - รูปแบบ: +44 7XXX XXXXXX - ตัวอย่าง: +44 7700 123456 - **หมายเลขโทรศัพท์บ้าน**: แตกต่างกันไปตามภูมิภาค - รูปแบบ: +44 XX XXXX XXXX หรือ +44 XXX XXX XXXX - ตัวอย่าง: +44 20 1234 5678 (ลอนดอน) #### อินเดีย (+91) - **หมายเลขมือถือ**: 10 หลัก มักเริ่มด้วย 6, 7, 8 หรือ 9 - รูปแบบ: +91 XXXXX XXXXX - ตัวอย่าง: +91 98765 43210 - **หมายเลขโทรศัพท์บ้าน**: แตกต่างกันไปตามภูมิภาค มักมี 8 หลักบวกกับรหัส STD - รูปแบบ: +91 XX XXXX XXXX - ตัวอย่าง: +91 11 2345 6789 (นิวเดลี) ## คู่มือทีละขั้นตอน ### วิธีการสร้างหมายเลขโทรศัพท์ 1. **เลือกการตั้งค่ารูปแบบ**: - เปิดใช้งาน "รูปแบบระหว่างประเทศ" หากคุณต้องการให้รวมรหัสประเทศ - เปิดใช้งาน "หมายเลขมือถือ" หากคุณต้องการหมายเลขมือถือ (ปิดสำหรับโทรศัพท์บ้าน) 2. **เลือกประเทศและภูมิภาค**: - เลือกประเทศที่ต้องการจากรายการ "รหัสประเทศ" - เลือกภูมิภาคเฉพาะจากรายการ "ภูมิภาค" 3. **สร้างหมายเลข**: - คลิกปุ่ม "สร้างหมายเลขโทรศัพท์" - เครื่องมือจะแสดงหมายเลขโทรศัพท์ที่สร้างขึ้นโดยสุ่มตามข้อกำหนดของคุณ 4. **คัดลอกหมายเลข**: - คลิกปุ่ม "คัดลอก" ข้างหมายเลขที่สร้างขึ้นเพื่อคัดลอกไปยังคลิปบอร์ดของคุณ ### ตัวอย่าง: การสร้างหมายเลขมือถือในเม็กซิโก 1. เลือก "+52 เม็กซิโก" จากรายการรหัสประเทศ 2. เลือก "CDMX (เม็กซิโกซิตี้)" จากรายการภูมิภาค 3. ตรวจสอบให้แน่ใจว่าเปิดใช้งาน "หมายเลขมือถือ" 4. เปิดใช้งาน "รูปแบบระหว่างประเทศ" หากคุณต้องการให้รวมรหัสประเทศ 5. คลิก "สร้างหมายเลขโทรศัพท์" 6. ตัวอย่างผลลัพธ์: "+52 55 1234 5678" (รูปแบบระหว่างประเทศ) หรือ "55 1234 5678" (รูปแบบท้องถิ่น) ## ตัวอย่างการใช้งาน ### JavaScript
1// ตัวอย่าง JavaScript ของการสร้างหมายเลขมือถือในเม็กซิโกแบบสุ่ม
2function generateMexicanMobileNumber(international = true) {
3  // รหัสพื้นที่ของเม็กซิโกซิตี้
4  const areaCode = "55";
5  
6  // สร้างตัวเลขสุ่ม 8 หลักสำหรับหมายเลข
7  let number = "";
8  for (let i = 0; i < 8; i++) {
9    number += Math.floor(Math.random() * 10);
10  }
11  
12  // จัดรูปแบบหมายเลข
13  const formattedNumber = `${areaCode} ${number.substring(0, 4)} ${number.substring(4, 8)}`;
14  
15  // เพิ่มรหัสประเทศหากต้องการรูปแบบระหว่างประเทศ
16  return international ? `+52 ${formattedNumber}` : formattedNumber;
17}
18
19// ฟังก์ชันเพื่อตรวจสอบหมายเลขโทรศัพท์ในเม็กซิโก
20function validateMexicanPhoneNumber(number) {
21  // รูปแบบสำหรับรูปแบบระหว่างประเทศ
22  const intlPattern = /^\+52 \d{2} \d{4} \d{4}$/;
23  
24  // รูปแบบสำหรับรูปแบบท้องถิ่น
25  const localPattern = /^\d{2} \d{4} \d{4}$/;
26  
27  return intlPattern.test(number) || localPattern.test(number);
28}
29
30// ตัวอย่างการใช้งาน
31const phoneNumber = generateMexicanMobileNumber();
32console.log(phoneNumber); // ตัวอย่าง: +52 55 1234 5678
33console.log(`ถูกต้อง: ${validateMexicanPhoneNumber(phoneNumber)}`); // ถูกต้อง: true
34

Python

1# ตัวอย่าง Python ของการสร้างและตรวจสอบหมายเลขโทรศัพท์
2import random
3import re
4
5def generate_us_phone_number(international=True):
6    """สร้างหมายเลขโทรศัพท์ในสหรัฐอเมริกาแบบสุ่ม."""
7    # สร้างรหัสพื้นที่ (หลีกเลี่ยงรหัสเช่น 911)
8    area_code = random.randint(200, 999)
9    
10    # สร้างตัวเลขสุ่ม 7 หลักสำหรับหมายเลข
11    prefix = random.randint(200, 999)
12    line = random.randint(1000, 9999)
13    
14    # จัดรูปแบบหมายเลข
15    if international:
16        return f"+1 {area_code} {prefix} {line}"
17    else:
18        return f"({area_code}) {prefix}-{line}"
19        
20def validate_us_phone_number(number):
21    """ตรวจสอบว่าสตริงตรงกับรูปแบบหมายเลขโทรศัพท์ในสหรัฐอเมริกาหรือไม่."""
22    # รูปแบบสำหรับรูปแบบระหว่างประเทศ
23    intl_pattern = r'^\+1 \d{3} \d{3} \d{4}$'
24    
25    # รูปแบบสำหรับรูปแบบท้องถิ่น
26    local_pattern = r'^\(\d{3}\) \d{3}-\d{4}$'
27    
28    return bool(re.match(intl_pattern, number) or re.match(local_pattern, number))
29
30# ตัวอย่างการใช้งาน
31phone = generate_us_phone_number()
32print(phone)  # ตัวอย่าง: +1 555 123 4567
33print(f"ถูกต้อง: {validate_us_phone_number(phone)}")  # ถูกต้อง: True
34

Java

1import java.util.Random;
2import java.util.regex.Pattern;
3
4public class PhoneNumberGenerator {
5    private static final Random random = new Random();
6    
7    public static String generateUKMobileNumber(boolean international) {
8        // หมายเลขมือถือในสหราชอาณาจักรเริ่มต้นด้วย '7'
9        StringBuilder number = new StringBuilder("7");
10        
11        // สร้างตัวเลขสุ่ม 9 หลัก
12        for (int i = 0; i < 9; i++) {
13            number.append(random.nextInt(10));
14        }
15        
16        // จัดรูปแบบหมายเลข
17        String formatted = number.substring(0, 4) + " " + number.substring(4, 10);
18        
19        // เพิ่มรหัสประเทศหากต้องการรูปแบบระหว่างประเทศ
20        return international ? "+44 " + formatted : "0" + formatted;
21    }
22    
23    public static boolean validateUKMobileNumber(String number) {
24        // รูปแบบสำหรับรูปแบบระหว่างประเทศ
25        Pattern intlPattern = Pattern.compile("^\\+44 7\\d{3} \\d{6}$");
26        
27        // รูปแบบสำหรับรูปแบบท้องถิ่น
28        Pattern localPattern = Pattern.compile("^07\\d{3} \\d{6}$");
29        
30        return intlPattern.matcher(number).matches() || 
31               localPattern.matcher(number).matches();
32    }
33    
34    public static void main(String[] args) {
35        String phoneNumber = generateUKMobileNumber(true);
36        System.out.println(phoneNumber); // ตัวอย่าง: +44 7123 456789
37        System.out.println("ถูกต้อง: " + validateUKMobileNumber(phoneNumber)); // ถูกต้อง: true
38    }
39}
40

PHP

1<?php
2// ตัวอย่าง PHP ของการสร้างและตรวจสอบหมายเลขมือถือในอินเดีย
3
4function generateIndianMobileNumber($international = true) {
5    // หมายเลขมือถือในอินเดียเริ่มต้นด้วย 6, 7, 8 หรือ 9
6    $prefixes = [6, 7, 8, 9];
7    $prefix = $prefixes[array_rand($prefixes)];
8    
9    // สร้างตัวเลขสุ่ม 9 หลักสำหรับหมายเลข
10    $number = $prefix;
11    for ($i = 0; $i < 9; $i++) {
12        $number .= rand(0, 9);
13    }
14    
15    // จัดรูปแบบหมายเลข
16    $formatted = substr($number, 0, 5) . " " . substr($number, 5, 5);
17    
18    // เพิ่มรหัสประเทศหากต้องการรูปแบบระหว่างประเทศ
19    return $international ? "+91 " . $formatted : $formatted;
20}
21
22function validateIndianMobileNumber($number) {
23    // รูปแบบสำหรับรูปแบบระหว่างประเทศ
24    $intlPattern = '/^\+91 [6-9]\d{4} \d{5}$/';
25    
26    // รูปแบบสำหรับรูปแบบท้องถิ่น
27    $localPattern = '/^[6-9]\d{4} \d{5}$/';
28    
29    return preg_match($intlPattern, $number) || preg_match($localPattern, $number);
30}
31
32// ตัวอย่างการใช้งาน
33$phoneNumber = generateIndianMobileNumber();
34echo $phoneNumber . "\n"; // ตัวอย่าง: +91 98765 43210
35echo "ถูกต้อง: " . (validateIndianMobileNumber($phoneNumber) ? "true" : "false") . "\n"; // ถูกต้อง: true
36?>
37

C#

1using System;
2using System.Text;
3using System.Text.RegularExpressions;
4
5public class PhoneNumberGenerator
6{
7    private static Random random = new Random();
8    
9    public static string GenerateMexicanMobileNumber(bool international = true)
10    {
11        // รหัสพื้นที่ของเม็กซิโกซิตี้
12        string areaCode = "55";
13        
14        // สร้างตัวเลขสุ่ม 8 หลักสำหรับหมายเลข
15        StringBuilder number = new StringBuilder();
16        for (int i = 0; i < 8; i++)
17        {
18            number.Append(random.Next(10));
19        }
20        
21        // จัดรูปแบบหมายเลข
22        string formattedNumber = $"{areaCode} {number.ToString(0, 4)} {number.ToString(4, 4)}";
23        
24        // เพิ่มรหัสประเทศหากต้องการรูปแบบระหว่างประเทศ
25        return international ? $"+52 {formattedNumber}" : formattedNumber;
26    }
27    
28    public static bool ValidateMexicanPhoneNumber(string number)
29    {
30        // รูปแบบสำหรับรูปแบบระหว่างประเทศ
31        Regex intlPattern = new Regex(@"^\+52 \d{2} \d{4} \d{4}$");
32        
33        // รูปแบบสำหรับรูปแบบท้องถิ่น
34        Regex localPattern = new Regex(@"^\d{2} \d{4} \d{4}$");
35        
36        return intlPattern.IsMatch(number) || localPattern.IsMatch(number);
37    }
38    
39    public static void Main()
40    {
41        string phoneNumber = GenerateMexicanMobileNumber();
42        Console.WriteLine(phoneNumber); // ตัวอย่าง: +52 55 1234 5678
43        Console.WriteLine($"ถูกต้อง: {ValidateMexicanPhoneNumber(phoneNumber)}"); // ถูกต้อง: True
44    }
45}
46

กรณีการใช้งาน

การพัฒนาโปรแกรมและการทดสอบ

  • การทดสอบการตรวจสอบฟอร์ม: สร้างหมายเลขที่ถูกต้องเพื่อทดสอบกฎการตรวจสอบฟอร์ม
  • การเติมข้อมูลในฐานข้อมูล: สร้างข้อมูลตัวอย่างที่สมจริงสำหรับสภาพแวดล้อมการพัฒนา
  • การทดสอบ API: ทดสอบ API ที่ประมวลผลหรือตรวจสอบหมายเลขโทรศัพท์
  • การทดสอบส่วนติดต่อผู้ใช้: ตรวจสอบว่าการแสดงผลหมายเลขโทรศัพท์ในแอปพลิเคชันของคุณเป็นอย่างไร

การศึกษาและการฝึกอบรม

  • เรียนรู้มาตรฐานหมายเลขโทรศัพท์: เข้าใจกฎการจัดรูปแบบระหว่างประเทศและเฉพาะประเทศ
  • การฝึกอบรมด้านโทรคมนาคม: แสดงรูปแบบหมายเลขที่แตกต่างกันในประเทศต่างๆ
  • การฝึกอบรมการป้อนข้อมูล: ฝึกฝนด้วยตัวอย่างหมายเลขโทรศัพท์ที่สมจริง

การตลาดและการสื่อสาร

  • การตั้งค่าระบบ CRM: เติมข้อมูลในระบบการจัดการความสัมพันธ์กับลูกค้าด้วยข้อมูลตัวอย่าง
  • การทดสอบเทมเพลต: ทดสอบเทมเพลต SMS หรือการโทรด้วยหมายเลขที่สร้างขึ้น
  • การออกแบบประสบการณ์ผู้ใช้: ออกแบบและทดสอบส่วนติดต่อผู้ใช้ที่จัดการหมายเลขโทรศัพท์

ทางเลือก

ในขณะที่เครื่องมือนี้มุ่งเน้นไปที่ความเรียบง่ายและการใช้งานที่ง่าย มีทางเลือกอื่นๆ สำหรับความต้องการที่ซับซ้อนมากขึ้น:

  • ผู้สร้างหมายเลขที่ใช้ API: บริการที่ให้การสร้างหมายเลขโทรศัพท์ผ่านการเรียก API
  • โซลูชันที่ใช้ไลบรารี: ไลบรารีโปรแกรมเช่น libphonenumber สำหรับการจัดการหมายเลขโทรศัพท์อย่างครอบคลุม
  • เครื่องมือของผู้ให้บริการโทรคมนาคม: เครื่องมือเฉพาะที่ให้บริการโดยบริษัทโทรคมนาคม
  • ชุดสร้างข้อมูล: เครื่องมือสร้างข้อมูลปลอมที่ครอบคลุมซึ่งรวมถึงหมายเลขโทรศัพท์ในหมวดหมู่อื่นๆ

เครื่องมือนี้เหมาะสำหรับเมื่อคุณต้องการโซลูชันที่รวดเร็วและตรงไปตรงมาโดยไม่ซับซ้อนเกินไป

ประวัติของรูปแบบและมาตรฐานหมายเลขโทรศัพท์

วิวัฒนาการของรูปแบบและมาตรฐานหมายเลขโทรศัพท์มีความเกี่ยวข้องอย่างใกล้ชิดกับการพัฒนาเทคโนโลยีและโครงสร้างพื้นฐานด้านโทรคมนาคมทั่วโลก

ระบบโทรศัพท์ในช่วงแรก (1870s-1950s)

เมื่อระบบโทรศัพท์ถูกนำมาใช้ครั้งแรกในปลายศตวรรษที่ 19 หมายเลขโทรศัพท์มีความยาวสั้นมาก มักจะมีเพียง 2-4 หลัก เนื่องจากแต่ละเมืองหรือเมืองมีการแลกเปลี่ยนโทรศัพท์ที่เป็นอิสระจากกัน ผู้ประกอบการเชื่อมต่อสายโทรศัพท์โดยการเสียบสายเข้ากับสวิตช์บอร์ดด้วยมือ

เมื่อเครือข่ายโทรศัพท์เติบโต หมายเลขจึงยาวขึ้นและมีการแนะนำรหัสพื้นที่ แผนการหมายเลขโทรศัพท์ในอเมริกาเหนือ (NANP) ถูกสร้างขึ้นในปี 1947 เพื่อจัดตั้งระบบที่เป็นเอกภาพทั่วสหรัฐอเมริกาและแคนาดา โดยแนะนำรูปแบบ 3-3-4 หลักที่คุ้นเคย (รหัสพื้นที่ รหัสแลกเปลี่ยน หมายเลขผู้ใช้)

การพัฒนามาตรฐานระหว่างประเทศ (1960s-1980s)

สหภาพโทรคมนาคมระหว่างประเทศ (ITU) ซึ่งก่อตั้งขึ้นในปี 1865 ในชื่อสหภาพโทรเลขระหว่างประเทศ เริ่มพัฒนามาตรฐานระหว่างประเทศสำหรับการหมายเลขโทรศัพท์ในปี 1960 สิ่งนี้นำไปสู่การสร้างรหัสประเทศและการจัดระเบียบการโทรระหว่างประเทศ

ในปี 1964 ITU ได้แนะนำคำแนะนำ E.163 ซึ่งจัดตั้งแผนหมายเลขโทรศัพท์สาธารณะระหว่างประเทศ สิ่งนี้ถูกแทนที่ในภายหลังโดยคำแนะนำ E.164 ในปี 1984 ซึ่งยังคงเป็นมาตรฐานปัจจุบันสำหรับการหมายเลขโทรศัพท์สาธารณะ

การปฏิวัติมือถือ (1990s-2000s)

การนำโทรศัพท์มือถือมาใช้ในวงกว้างในปี 1990 และ 2000 สร้างความท้าทายใหม่สำหรับระบบการหมายเลข ประเทศหลายประเทศได้แนะนำรหัสนำเฉพาะหรือช่วงหมายเลขทั้งหมดที่จัดสรรให้กับโทรศัพท์มือถือ ตัวอย่างเช่น ในสหราชอาณาจักร หมายเลขมือถือมักเริ่มต้นด้วย '07' ในขณะที่ในเม็กซิโก หมายเลขมือถือยังคงใช้รูปแบบเดียวกับหมายเลขโทรศัพท์บ้านแต่มีรหัสพื้นที่ที่แตกต่างกัน

มาตรฐานสมัยใหม่และยุค VoIP (2000s-ปัจจุบัน)

ด้วยการเพิ่มขึ้นของ Voice over IP (VoIP) และการสื่อสารที่ใช้ทางอินเทอร์เน็ต รูปแบบหมายเลขโทรศัพท์จึงมีความยืดหยุ่นมากขึ้น มาตรฐาน E.164 ได้รับการปรับให้เข้ากับเทคโนโลยีใหม่เหล่านี้ และหลายประเทศได้ปรับแผนการหมายเลขของตนเพื่อสร้างความจุที่มากขึ้น

การแนะนำความสามารถในการพกพาหมายเลขในหลายประเทศได้ทำให้ความแตกต่างระหว่างหมายเลขมือถือและหมายเลขโทรศัพท์บ้านเบลอมากขึ้น เนื่องจากผู้ใช้สามารถเก็บหมายเลขของตนเมื่อเปลี่ยนประเภทบริการ

ในปัจจุบัน รูปแบบหมายเลขโทรศัพท์ยังคงพัฒนา โดยบางประเทศพิจารณาการกำจัดรหัสพื้นที่หรือการรวมหมายเลขโทรศัพท์เข้ากับอัตลักษณ์ดิจิทัล อย่างไรก็ตาม โครงสร้างพื้นฐานที่จัดตั้งขึ้นโดย E.164 ยังคงเป็นพื้นฐานของการหมายเลขโทรศัพท์ทั่วโลก

คำถามที่พบบ่อย

อะไรทำให้หมายเลขโทรศัพท์ถูกต้อง?

หมายเลขโทรศัพท์ที่ถูกต้องปฏิบัติตามรูปแบบที่ถูกต้องสำหรับประเทศของตน รวมถึงความยาวที่เหมาะสม รหัสประเทศ รหัสพื้นที่ และรูปแบบรหัสนำที่เหมาะสม เครื่องมือนี้สร้างหมายเลขที่ปฏิบัติตามข้อกำหนดโครงสร้างเหล่านี้ แม้ว่าจะไม่ใช่หมายเลขโทรศัพท์ที่ทำงานจริงที่มอบหมายให้กับผู้ใช้จริง

ทำไมหมายเลขโทรศัพท์ถึงมีรูปแบบที่แตกต่างกันในประเทศต่างๆ?

รูปแบบหมายเลขโทรศัพท์แตกต่างกันไปตามประเทศเนื่องจากการพัฒนาประวัติศาสตร์ของโครงสร้างพื้นฐานด้านโทรคมนาคม ขนาดประชากร การแบ่งเขตการบริหาร และการตัดสินใจทางกฎหมายของประเทศแต่ละประเทศ หน่วยงานโทรคมนาคมของแต่ละประเทศจะจัดตั้งแผนการหมายเลขของตนเอง

ฉันสามารถสร้างหมายเลขโทรศัพท์ที่ทำงานจริงด้วยเครื่องมือนี้ได้หรือไม่?

ไม่ เครื่องมือนี้สร้างหมายเลขสุ่มที่ปฏิบัติตามรูปแบบที่ถูกต้องสำหรับแต่ละประเทศ แต่ไม่รับประกันว่าจะได้รับการกำหนดหมายเลขให้กับผู้ใช้จริง เครื่องมือนี้ออกแบบมาสำหรับการทดสอบและวัตถุประสงค์ทางการศึกษาเท่านั้น

หมายเลขที่สร้างขึ้นมีความถูกต้องเพียงใด?

หมายเลขที่สร้างขึ้นจะตรงตามรูปแบบโครงสร้าง (ความยาว รหัสนำ ฯลฯ) สำหรับแต่ละประเทศและภูมิภาค แต่จะถูกสร้างขึ้นโดยสุ่ม เหมาะสำหรับการทดสอบการตรวจสอบรูปแบบ แต่ไม่ใช่สำหรับการสื่อสารโทรคมนาคมจริง

ทำไมหมายเลขมือถือและหมายเลขโทรศัพท์บ้านถึงมีรูปแบบที่แตกต่างกัน?

หมายเลขมือถือและหมายเลขโทรศัพท์บ้านมักมีรูปแบบที่แตกต่างกันเพราะถูกนำมาใช้ในช่วงเวลาที่แตกต่างกันและจัดการโดยระบบที่แตกต่างกันภายในโครงสร้างพื้นฐานด้านโทรคมนาคมของประเทศ หมายเลขมือถือมักปฏิบัติตามแผนการหมายเลขที่ใหม่กว่า

ฉันสามารถใช้หมายเลขเหล่านี้ในเว็บไซต์หรือแอปพลิเคชันของฉันได้หรือไม่?

ใช่ คุณสามารถใช้หมายเลขที่สร้างขึ้นสำหรับการทดสอบ การพัฒนา หรือเป็นตัวแทนในแอปพลิเคชันของคุณ อย่างไรก็ตาม หลีกเลี่ยงการใช้ในสภาพแวดล้อมการผลิตที่คาดว่าจะมีหมายเลขโทรศัพท์จริง

เครื่องมือนี้เก็บหรือบันทึกหมายเลขโทรศัพท์ที่สร้างขึ้นหรือไม่?

ไม่ เครื่องมือนี้ไม่เก็บหรือบันทึกหมายเลขโทรศัพท์ที่สร้างขึ้น หมายเลขแต่ละหมายเลขจะถูกสร้างตามคำขอและมีอยู่เฉพาะในเซสชันเบราว์เซอร์ของคุณจนกว่าคุณจะเปลี่ยนหน้าไปหรือสร้างหมายเลขใหม่

กระบวนการตรวจสอบความถูกต้องทำงานอย่างไร?

กระบวนการตรวจสอบความถูกต้องจะตรวจสอบว่าหมายเลขที่สร้างขึ้นปฏิบัติตามรูปแบบที่ถูกต้องสำหรับประเทศที่เลือกหรือไม่ รวมถึงความยาวที่เหมาะสม รหัสประเทศ และข้อกำหนดรหัสนำ เครื่องมือนี้ไม่ตรวจสอบว่าหมายเลขนั้นใช้งานได้จริงหรือไม่

ฉันสามารถสร้างหมายเลขโทรศัพท์หลายหมายเลขพร้อมกันได้หรือไม่?

เวอร์ชันปัจจุบันสร้างหมายเลขหนึ่งหมายเลขในแต่ละครั้ง ความเรียบง่ายนี้ทำให้เครื่องมือยังคงใช้งานง่ายและเข้าใจได้

หมายเลขที่สร้างขึ้นเป็นแบบสุ่มหรือไม่?

ใช่ ตัวเลขในหมายเลขโทรศัพท์ที่สร้างขึ้น (ยกเว้นรหัสประเทศและรหัสนำที่จำเป็น) จะถูกสร้างขึ้นโดยสุ่มเพื่อให้มีความหลากหลายของหมายเลขที่เป็นไปได้

อ้างอิง

  1. สหภาพโทรคมนาคมระหว่างประเทศ (ITU). "E.164: แผนหมายเลขโทรศัพท์สาธารณะระหว่างประเทศ." ITU

  2. การบริหารแผนหมายเลขโทรศัพท์ในอเมริกาเหนือ. "เกี่ยวกับแผนหมายเลขโทรศัพท์ในอเมริกาเหนือ." NANPA

  3. Ofcom (สหราชอาณาจักร). "หมายเลขโทรศัพท์ - แผนหมายเลขโทรศัพท์แห่งชาติ." Ofcom

  4. กระทรวงโทรคมนาคม รัฐบาลอินเดีย. "แผนหมายเลขแห่งชาติ." DoT India

  5. สถาบันการสื่อสารของเม็กซิโก. "แผนการจัดหมายเลขโทรศัพท์แห่งชาติ." IFT Mexico

  6. ไลบรารี libphonenumber ของ Google. "การวิเคราะห์ การจัดรูปแบบ และการตรวจสอบหมายเลขโทรศัพท์." GitHub Repository

  7. คู่มือหมายเลขโทรศัพท์ทั่วโลก. "รหัสการโทรระหว่างประเทศและข้อมูล." WTNG

ลองใช้โทรศัพท์หมายเลข Generator และ Validator ของเราในวันนี้เพื่อสร้างหมายเลขโทรศัพท์ที่จัดรูปแบบอย่างถูกต้องสำหรับการทดสอบ การพัฒนา หรือความต้องการทางการศึกษา!

🔗

เครื่องมือที่เกี่ยวข้อง

ค้นพบเครื่องมือเพิ่มเติมที่อาจมีประโยชน์สำหรับการทำงานของคุณ

เครื่องมือสร้างและตรวจสอบ IBAN สำหรับการทดสอบและการตรวจสอบ

ลองเครื่องมือนี้

เครื่องมือสร้างและตรวจสอบ CNPJ ของบราซิลสำหรับการทดสอบ

ลองเครื่องมือนี้

ตัวทดสอบและตรวจสอบรูปแบบ Regex: ทดสอบ, ไฮไลท์ & บันทึกรูปแบบ

ลองเครื่องมือนี้

เครื่องสร้าง QR Code ที่ง่าย: สร้างและดาวน์โหลด QR Code ได้ทันที

ลองเครื่องมือนี้

เครื่องสร้างหมายเลข CPF สำหรับการทดสอบและพัฒนา

ลองเครื่องมือนี้

เครื่องมือสร้าง UUID สำหรับแอปพลิเคชันต่างๆ

ลองเครื่องมือนี้

เครื่องมือสร้างข้อความ Lorem Ipsum สำหรับการทดสอบและพัฒนา

ลองเครื่องมือนี้

เครื่องมือสร้างและตรวจสอบ CBU ของอาร์เจนตินา | รหัสธนาคาร

ลองเครื่องมือนี้

เครื่องมือสร้างและตรวจสอบ CUIT/CUIL ของอาร์เจนตินา

ลองเครื่องมือนี้