นำเข้า java.util.scanner; ออก. println ("โปรดป้อนอีเมล:"); /w+ @// w+ // )) // d {8} "; // ตั้งค่ากฎนิพจน์ปกติของหมายเลขโทรศัพท์มือถือ 13*, 15*, 18*ถ้า (email.matches (email_regex)) {system.out.println (อีเมล +" ที่อยู่อีเมลที่ถูกกฎหมาย! ");} else {system.out.println (อีเมล +" 是个非法的ที่อยู่อีเมล! ");} ถ้า (mobile.matches (mobile_regex)) {system.out.println (มือถือ +" 是个是个合法的手机号码 ");} else {system.out.println (มือถือ +" เป็นหมายเลขโทรศัพท์มือถือที่ผิดกฎหมาย ");}}}
ในการพัฒนาขั้นตอนมันเป็นสิ่งที่หลีกเลี่ยงไม่ได้ว่าสถานการณ์ของการจับคู่การค้นหาการเปลี่ยนและการตัดสินจะเกิดขึ้นอย่างหลีกเลี่ยงไม่ได้ ดังนั้นการเรียนรู้และการใช้การแสดงออกอย่างสม่ำเสมอจึงกลายเป็นวิธีหลักในการแก้ไขข้อขัดแย้งนี้ ทุกคนรู้ว่านิพจน์ทั่วไปเป็นข้อกำหนดที่สามารถใช้สำหรับการจับคู่รูปแบบและการแทนที่ มันเพื่ออธิบายหนึ่งหรือมากกว่าสตริงที่จะจับคู่เมื่อมองหาเรื่อง ในฐานะที่เป็นเทมเพลตนิพจน์ทั่วไปจะตรงกับรูปแบบอักขระกับสตริงที่ค้นหา
ตั้งแต่ JDK1.4 เปิดตัวแพ็คเกจ java.util.regex เราได้จัดเตรียมแพลตฟอร์มแอปพลิเคชันนิพจน์ทั่วไปของ Java ให้เรา
กฎการแสดงออกปกติทั่วไป
การจับคู่ตัวเลขเฉพาะ:^[1-9] d*$ // จับคู่จำนวนเต็มบวก^-[1-9] d*$ // จับคู่จำนวนเต็มลบ^-? [1-9] d*$ // การจับคู่จำนวนเต็ม ^[[[[[[[[[[[[[[1 ปี [1-9] 1-9] D*| 0 $ // จับคู่จำนวนเต็มที่ไม่เป็นลบ (จำนวนเต็มบวก+ 0) ^-[1-9] D* | 0 $ // จับคู่จำนวนเต็มที่ไม่เป็นบวก (จำนวนลบ+ 0) ^[1-9] d*.d*| ([1-9] d*.d*| 0.d*[1-9] d*) $ // จับคู่หมายเลขจุดลอยตัวเชิงลบ^-? ([1-9] d*.d*| 0 D*[1-9] D*| ? | 0.D*[1-9] D*) | ให้ความสนใจกับการแก้ไขสตริงเฉพาะที่ตรงกัน: ^[A-ZA-Z]+$ // จับคู่สตริงที่ประกอบด้วยตัวอักษรภาษาอังกฤษ 26 ตัว ^[AZ]+$ // การจับคู่ 26 ตัวอักษรภาษาอังกฤษขององค์ประกอบตัวพิมพ์ใหญ่ ^[AZ]+$ // สตริงของตัวพิมพ์เล็กที่ประกอบด้วยตัวอักษรภาษาอังกฤษ 26 ตัว^[a-za-z0-9]+$ // การจับคู่ประกอบด้วยตัวเลขและ 26 ตัวอักษรภาษาอังกฤษสตริง^w+$ // จับคู่สตริงที่ประกอบด้วยตัวเลข 26 ตัวอักษรภาษาอังกฤษ 26 ตัวอักษร หรือขีดเส้นใต้ "^d {m ,,, n} $" สามารถป้อนจำนวนศูนย์และไม่ใช่ศูนย์เริ่มต้น: "^(0 | [1-9] [0-9] $" $ "สามารถป้อนจำนวนบวกได้เท่านั้น ของสองทศนิยม: "^[0-- 9]+(. [0-9] {2})? $" สามารถป้อนจำนวนบวก 1-3 หลัก: "^[0-9]+(. [. 0-9] {1,3})? "^-[1-9] [0-- 9]*$" สามารถป้อนอักขระที่มีความยาว 3: "^. {3} $" สามารถป้อนสตริงที่ประกอบด้วยตัวอักษรภาษาอังกฤษ 26 ตัวเท่านั้น: "^[ a-za-z]+$ "สามารถเป็นสตริงอินพุตที่ประกอบด้วย 26 ตัวอักษรตัวพิมพ์ใหญ่:"^[az]+$ "สามารถป้อนสตริงที่ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็ก 26 ตัวเท่านั้น:"^[az]+$ "เท่านั้น ป้อนหมายเลขและ 26 ภาษาอังกฤษภาษาอังกฤษของตัวอักษร: "^[a-za-z0-9]+$" สามารถป้อนสตริงที่ประกอบด้วยตัวเลข 26 ตัวอักษรภาษาอังกฤษหรือบรรทัดลง: "^w+$" ยืนยันรหัสผ่านผู้ใช้: "^[a-za-z] w {5,17} $" รูปแบบที่ถูกต้องคือ: เริ่มต้นด้วยตัวอักษรระหว่าง 6-18 ตัวอักษรเฉพาะตัวเลขและบรรทัดล่างสามารถรวมได้ การตรวจสอบว่ามี^%& ',; } $ "ยืนยันที่อยู่อีเมล:"^w+[-+.] w+)*@w+([-.] w+)* [w- w-]+.)+[w-]+(/[w-./?%& =)? 4}-)? ตรวจสอบหมายเลขหมายเลขรหัส 2]) $ "$" $ "รูปแบบที่ถูกต้องคือ:" 01 "," 09 "," 1 "และ" 12 "ตรวจสอบ 31 วันของเดือน:"^((0? [1-9]) | (1 | 2) [0-9]) | 30 | -U9FA5] จับคู่อักขระคู่-ไบต์ (รวมถึงอักขระจีน): [^x00-xff] จับคู่การแสดงออกปกติของบรรทัดที่ว่างเปล่า: n [s |]*r เพื่อให้ตรงกับการแสดงออกปกติของ HTML ที่ทำเครื่องหมายไว้:/<(.* ). *@w+([-.] w+)* ./ ./?% Enrichment)?