..


ลิงก์ผู้สนับสนุน

นิพจน์ปกติใน C #

บทความที่เขียนโดย Vincenzo Gaglio
หน้า 1 จาก 4

มากมักจะเป็นโปรแกรมเมอร์ในตำแหน่งที่มีการแยกสตริงของตัวอักษรที่ กรณีทั่วไปคือเมื่อการประมวลผลข้อความที่ป้อนโดยผู้ใช้ที่จะค้นหา -- และในที่สุดก็กำจัด -- ตัวอักษรบางอย่าง
เพื่อลดความซับซ้อนนี้และชนิดอื่น ๆ ของกิจกรรมที่จะปรากฏจะมีประโยชน์มากที่เรียกว่าการแสดงออกปกติ

นิพจน์ปกติประกอบด้วย"รูปแบบนามธรรม"ของสตริงที่ถูกใช้เพื่อทำการเปรียบเทียบเพื่อที่จะตรวจสอบว่าสตริงเมื่อเทียบกับการจัดรูปแบบตอบสนองความต้องการบางอย่าง E'ยังสามารถใช้นิพจน์ปกติท​​ี่จะสกัดหรือเพื่อแทนที่บางส่วนของข้อความ

ลองดูตัวอย่างที่มีวัตถุประสงค์เพื่อแสดงการแสดงออกวิธีการเหล่านี้ โดยใช้ Visual Studio สร้างโปรแกรมประยุกต์คอนโซลที่เรียบง่าย (ซึ่งเราเรียก TestRegExp) ที่จะนำวัตถุสองชนิดของสตริงเป็น input และกำหนดว่าเป็นครั้งแรกของพวกเขา (นิพจน์ปกติ) ตรงต่อวินาทีหรือน้อยกว่า มันควรจะรวมไว้ใน System.Text.RegularExpressions namespace และทำให้การเปรียบเทียบการใช้ System.Text.RegularExpressions.Regex.IsMatch คงที่






 ใช้ System.Text.RegularExpressions;

 





 TestRegExp namespace

 





 {

 





 ClasseTest ชั้น

 





 {

 





 static void Main (String args [])

 





 {

 





 ถ้า (Regex.IsMatch (args [1] args [0]))

 





 Console.WriteLine ("ใส่รูปแบบให้ความเคารพต่อที่กำหนดไว้.");

 





 อื่น

 





 Console.WriteLine ("ใส่ไม่เคารพรูปแบบที่กำหนด .");}}}



ณ จุดนี้ที่เรารันโปรแกรมที่เป็นพารามิเตอร์ตัวแรกและผ่านการแสดงออกปกติ"^ \ d {5} $"(เราจะได้เห็นในไม่ช้าความหมายของสัญลักษณ์คำถามที่) และที่สองเป็นสตริงที่"1234"หรือ"12345" ผลลัพธ์ของการประยุกต์ใช้ในกรณีของสตริงที่"1234"ที่ควรจะเป็น"ใส่ไม่เคารพรูปแบบที่ระบุ.", ในขณะที่ในกรณีของ"12345"เคารพกำหนดรูปแบบเข้าที่."






 C : \> TestRegExp ^ \ d {5} $ 1,234

 





 การป้อนข้อมูลที่ไม่เคารพรูปแบบที่กำหนดไว้

 







 C : \> TestRegExp ^ \ d {5} $ 12,345

 





 เคารพในรูปแบบอินพุตที่กำหนดไว้



นี้เป็นเพราะเมื่อคุณได้เข้าใจวิธีการเปรียบเทียบ IsMatch นิพจน์ปกติกับสตริงและส่งกลับค่าบูลีนของจริงถ้ารูปแบบคือ dictated โดยครั้งแรกที่สังเกตได้จากที่สองที่เป็นเท็จอย่างอื่น ในตัวอย่างข้างต้นนิพจน์ปกติ"^ \ d {5} $"บ่งชี้ว่าสตริงที่จะประเมินจะต้องได้รับจากตรง 5 ตัวเลข (ในความเป็นจริงเมื่อเปรียบเทียบกับ"1234"จะกลับเท็จ)

ในรายละเอียดเพิ่มเติมอักขระ"^"หมายถึงจุดเริ่มต้นของสตริงที่"\ d"บ่งชี้ว่าตัวอักษรที่จะต้องมีตัวเลข"{5}"ความยาวของสตริงและ"$"ที่บ่งชี้ถึงการสิ้นสุดของสตริง หากคุณลบตัวอักษร"^"นิพจน์ปกติการเปลี่ยนแปลงความหมายของความลึกที่ ในความเป็นจริงการแสดงออก \ d {5} $ มักจะจำเป็นต้องมีห้าตัวเลขในลำดับ แต่ยังตรวจสอบสตริง"abcd12345"หรือ"ciaociao12345"เพราะความหมายคือ"สตริงที่ลงท้ายด้วยหมายเลขลำดับที่ห้า."

กฎที่ดีที่จะปฏิบัติตามอยู่เสมอใส่ตัวอักษร"^"ที่จุดเริ่มต้นของการแสดงออกปกติและตัวอักษร"$"ในตอนท้ายของมัน การจัดนี้เพื่อให้มั่นใจว่าการป้อนข้อมูลต้องตรงกับนิพจน์ปกติและไม่เพียง แต่มีการใช้งานร่วมกับอักขระเดียวกัน

ในประเภทเดียวกัน ...
E - Learning
Excel (eBook) Excel (eBook)
สร้างกระดาษคำนวณและการคำนวณ ที่เพียง 25 €
หน้า (eBook) หน้า (eBook)
สร้างหน้าเว็บโดยไม่ต้องรู้ HTML ที่เพียง 25 €
Photoshop (หลักสูตร) Photoshop (หลักสูตร)
เว็บกราฟิกและแก้ไขภาพด้วย Adobe Photoshop ที่มีชื่อเสียง เริ่มต้นจาก 49 €
ลิงก์ผู้สนับสนุน