Entry ล่าสุดจาก chonla's blog : jQuery, Ajax, PHP, JSON, XML, Web Technologies |
![]() |
|
Regular Expression : ไม่เริ่มต้นด้วย… เขียนยังไงเนี่ย ใน Regular Expression วิธีการเขียน pattern ให้ตรวจสอบว่า จะต้องขึ้นต้นด้วยตัวเลขเท่านั้น หรือจะต้องขึ้นต้นด้วยตัวอักษรภาษาอังกฤษเท่านั้น ทำได้ง่าย ๆ โดยการเติมสัญลักษณ์ ^ เข้าไปด้านหน้า ทีนี้ เราอยากเปลี่ยน pattern ให้ตรวจสอบเป็น ห้ามขึ้นด้วยตัวเลขนะ หรือห้ามขึ้นด้วยตัวอักษรภาษาอังกฤษนะ จะทำยังไงดีล่ะ… มาดูกัน วิธีง่าย ๆ ที่มานำเสนอก็คือ การใช้สิ่งที่เรียกว่า Zero-width negative look ahead assertion ครับ แค่ชื่อก็ปวดหัวตึ้บ… เดี๋ยวก่อนครับ วิธีการใช้งานมันง่ายกว่าชื่อของมันครับ เพียงแค่เราใส่ ^(?! และ ) ครอบสิ่งที่เราไม่ต้องการให้ขึ้นต้น เท่านั้นเป็นอันจบครับ ยกตัวอย่างเช่น เราไม่ต้องการให้ขึ้นต้นด้วย abc แต่หลังจากนั้นจะเป็นอะไรก็ได้ เราก็ใช้ pattern เป็น ^(?!abc)\w+ ครับ ทีนี้ คำที่ขึ้นต้นด้วย abc ทั้งหมด จะ fail [...] |
|