----------------------------------------------------------------
5.การกำหนด "ให้ต้องมีตัวอักษรที่กำหนด อย่างน้อย 1 ตัว"
เราจะใช้เครื่องหมาย "+" ตามหลังตัวอักษรหรือคำ ที่เราต้องการใช้ในการค้นหาในประโยคนั้นๆ เช่น
echo ereg("ก+", "วิธีการทำงาน");
?>
***จะได้ค่า return กลับมาเป็น True เนื่องจากในประโยคที่เราค้นหามี "ก" อยู่นั่นเอง
----------------------------------------------------------------
6.การตรวจสอบช่องว่าง
ในการตรวจสอบช่องว่างนั้นจะใช้ "[[:space:]]" หรือ " "" " เพื่อตรวจสอบ แต่การใช้ ":space:" นั้น จะรวมถึงเครื่องหมายอื่นๆด้วย เช่น เครื่องหมายเว้นวรรค,tab และ เครื่องหมายขึ้นบรรทัดใหม่
ตัวอย่างการตรวจสอบ เช่น
echo ereg("ทองจุล[[:space:]]ขันขาว", "ทองจุล ขันขาว");
?>
***จะได้ค่า return กลับมาเป็น True
----------------------------------------------------------------
7.การตรวจสอบเป็นช่วง
เราจะใช้เครื่องหมาย "[]" คร่อมระหว่างกลุ่มของตัวอักษรที่เราต้องการนำไปตรวจสอบในประโยคนั้นๆ
ตัวอย่างของการกำหนดช่วงตรวจสอบ ได้แก่
- [ก-๙] - ตัวอักษรไทยรวมทั้งสระด้วย ถ้าระบุ [ก-ฮ] จะไม่มีสระ
- [a-zA-Z] - ตัวอักษรอังกฤษทั้งตัวใหญ่ตัวเล็ก ถ้าต้องการอย่างใดอย่างหนึ่งให้ระบุดังนี้ [a-z]หรือ[A-Z]
- [0-9๐-๙] - ตัวเลขทั้งไทยและอังกฤษ
เป็นต้น ซึ่งเราสามารถกำหนดได้เองตามความต้องการ
สำหรับการนำไปใช้ เช่น
// กำหนดให้มีเฉพาะตัวอักษรภาษาไทยเท่านั้น มีตัวเลขที่เป็นภาษาไทยได้ แต่ห้ามมีตัวอักษรภาษาอังกฤษ
echo ereg("^[ก-๙]+$", "ทองจุล๐๑๒๓"); // ให้ค่าที่เป็นจริง
----------------------------------------------------------------
8.การจัดกลุ่มคำ หรือ ข้อความ
ถ้าต้องการจัดกลุ่มคำหรือข้อความให้ใช้เครื่องหมาย "()" คร่อม เช่น
echo ereg("^(ทองจุล|ปรีชา).+$", "ปรีชา สุขเกษม");
?>
***เครื่องหมาย "|" หมายความว่า อย่างใดอย่างหนึ่ง ดังนั้นจะได้ค่า return กลับมาเป็น True
เพราะขึ้นต้น "ปรีชา" และตามด้วยอะไรก็ได้เป็นตัวสุดท้ายอีกหนึ่งตัว คือ "สุขเกษม"
----------------------------------------------------------------
9.การตรวจสอบเครื่องหมาย หรือ สัญลักษณ์พิเศษ
สัญลักษณ์พิเศษที่ต้อง escape มีดังนี้ ^, $, (, ), ., [, |, *, ?, +, \, และ {
เราจะใช้เครื่องหมาย "\" นำหน้าสัญลักษณ์พิเศษ ที่ต้องการค้นหาในประโยคนั้นๆ เช่น
echo ereg("^(ทองจุล|ปรีชา).\*$", "ปรีชา สุขเกษม*");
?>
***จะได้ค่า return กลับมาเป็น True
----------------------------------------------------------------
ที่มา : http://www.thaijobmarket.com/regularex.html
ไม่มีความคิดเห็น:
แสดงความคิดเห็น