1 / 19

CHAPTER 7 String Functions and Regular Expression

CHAPTER 7 String Functions and Regular Expression. Agenda. ฟังก์ชันเกี่ยวกับข้อความ (String Functions) นิพจน์ปกติ (Regular Expression). ฟังก์ชันเกี่ยวกับข้อความ. การตัดช่องว่างในสตริง - trim( ข้อความ ) สำหรับตัดช่องว่างทั้งหมดที่อยู่ด้านหน้าและด้านหลัง ของสตริงทิ้งไป - ltrim( ข้อความ )

betty
Download Presentation

CHAPTER 7 String Functions and Regular Expression

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CHAPTER 7String Functions andRegular Expression

  2. Agenda • ฟังก์ชันเกี่ยวกับข้อความ (String Functions) • นิพจน์ปกติ (Regular Expression)

  3. ฟังก์ชันเกี่ยวกับข้อความฟังก์ชันเกี่ยวกับข้อความ การตัดช่องว่างในสตริง - trim(ข้อความ) สำหรับตัดช่องว่างทั้งหมดที่อยู่ด้านหน้าและด้านหลัง ของสตริงทิ้งไป - ltrim(ข้อความ) ตัดช่องว่างที่อยู่ด้านหน้า(ทางซ้าย) ทิ้งไป - chop(ข้อความ) ตัดช่องว่างที่อยู่ด้านหลัง (ทางขวา) ทิ้งไป ข้อความที่อยู่ในวงเล็บ อาจเป็นข้อความจริงๆ หรือเป็นตัวแปรสตริงก็ได้หากเป็นข้อความจริง ๆ ให้เขียนใน “ ”

  4. trim() <? $str1 =" Computer Science\n\n"; print "String1 = ".$str1."<br>"; echo "Length of String1 = ".strlen($str1)."<br>"; $str2 = trim($str1); echo "Length of String2 = ".strlen($str2)."<br>"; ?>

  5. ltrim() <? $str1 =" Computer Science\n\n"; print "String1 = ".$str1."<br>"; echo "Length of String1 = ".strlen($str1)."<br>"; $str2 = ltrim($str1); echo "Length of String2 = ".strlen($str2)."<br>"; ?>

  6. chop() <? $str1 =" Computer Science\n\n\n"; print "String1 = ".$str1."<br>"; echo "Length of String1 = ".strlen($str1)."<br>"; $str2 = chop($str1); echo "Length of String2 = ".strlen($str2)."<br>"; ?>

  7. nl2br() เปลี่ยน \n ให้เป็น <br> <? $str =" Computer\n Science\nChiang Mai\n\n"; print "String = ".$str."<br>"; echo “use nl2br() <br>"; echo "String = ".nl2br($str); ?>

  8. การเปลี่ยนรูปแบบของตัวอักษรการเปลี่ยนรูปแบบของตัวอักษร ตัวอย่างคำสั่ง $str= “Please ENTER your name”; strtoupper($str); strtolower($str); ucfirst($str); ucwords($str);

  9. การเปรียบเทียบ นับอักษร หาตำแหน่ง สลับ และซ้ำข้อความ

  10. การตัดข้อความบางส่วนออกมาใช้การตัดข้อความบางส่วนออกมาใช้

  11. นิพจน์ปกติ (Regular Expression) regular expression ใช้สำหรับการเปรียบเทียบและ แทนที่ข้อมูลแบบสตริง ซึ่งคล้ายกับการใช้ฟังก์ชัน เปรียบเทียบและแทนที่ของสตริง แต่ regular expression จะสามารถกำหนดรูปแบบของสตริงได้มากกว่า เพื่อใช้ใน การค้นหาสตริงที่ใกล้เคียงกันได้ โดยใช้รูปแบบ(pattern) สำหรับตรวจสอบหลัก ๆ ดังนี้ ^ กำหนดให้เป็นจุดเริ่มต้นข้อความ $ กำหนดให้เป็นจุดสิ้นสุดข้อความ [A-Z] หมายถึงตัวอักษร A ถึง Z [a-z] หมายถึงตัวอักษร a ถึง z [0-9] หมายถึงตัวเลข 0-9

  12. ฟังก์ชันสำหรับตรวจสอบค่าสตริงฟังก์ชันสำหรับตรวจสอบค่าสตริง ฟังก์ชันการค้นหาสตริงย่อย - ereg(pattern,ข้อความ) ใช้สำหรับตรวจสอบข้อความและตัวอักษร ฟังก์ชันจะตี ความตัวอักษรพิมพ์ใหญ่และตัวอักษรพิมพ์เล็กแตกต่างกัน - eregi(pattern,ข้อความ) ใช้สำหรับการตรวจสอบข้อความและตัวอักษร โดยจะ ตีความตัวอักษรพิมพ์ใหญ่และตัวพิมพ์เล็กเหมือนกัน

  13. ตัวอย่าง: การตรวจสอบรหัสไปรษณีย์ <? $zip = “10220”; if (!ereg(^[0-9] [0-9] [0-9] [0-9] [0-9]$)) echo “<br>$zip ผิดรูปแบบ กลับไปแก้ไขใหม่”; else echo “<br>$zip ถูกต้อง”; ?> • ลองเปลี่ยนค่าตัวแปร $zip เป็นค่าต่าง ๆ • ถูกต้อง • K1022 ผิดรูปแบบ กลับไปแก้ไขใหม่ • 1022 ผิดรูปแบบ กลับไปแก้ไขใหม่

  14. ตัวอย่าง <? $str1 = "Computer Science, Chiang mai"; $str2 = "computer science, Chiang Mai"; $com = "Chiang mai"; echo "Comparision string1<br>"; if (ereg($com,$str1)) echo "Found String<br>"; else echo "Not found <br>"; echo "Comparision string2<br>"; if (ereg($com,$str2)) echo "Found String<br>"; else echo "Not found <br>"; echo "Comparision string2 with eregi<br>"; if (eregi($com,$str2)) echo "Found String<br>"; else echo "Not found <br>"; ?>

  15. ฟังก์ชันการแทนที่สตริงย่อยฟังก์ชันการแทนที่สตริงย่อย - ereg_replace(pattern,คำใหม่,ข้อความ) ใช้สำหรับแทนที่ข้อความและตัวอักษร ฟังก์ชันจะตี ความตัวอักษรพิมพ์ใหญ่และตัวอักษรพิมพ์เล็กแตกต่างกัน - eregi_replace(pattern,คำใหม่,ข้อความ) ใช้สำหรับแทนที่ข้อความและตัวอักษร โดยจะตีความตัว อักษรพิมพ์ใหญ่และตัวพิมพ์เล็กเหมือนกัน

  16. การแทนที่คำในข้อความ

  17. สำหรับ str_replace และ stri_replace เหมาะสำหรับการค้นหาคำแบบตรง ๆ เพื่อเปลี่ยนเข้าไปแทนที่ เช่น เซ็นเซอร์คำไม่สุภาพส่วน ereg_replace และ eregi_replace เหมาะสำหรับการค้นหาในลักษณะเปรียบเทียบรูปแบบ pattern ที่ซับซ้อนกว่า ตัวอย่าง <? $str = “เดินยังกะควาย ควาย ควาย"; echo “<br> ก่อน: $str"; $str=str_replace(“ควาย”, “***”,$str); echo “<br>หลัง: $str"; ?> ผลลัพธ์ ก่อน: เดินยังกะควาย ควาย ควาย หลัง: เดินยังกะ*** *** ***

  18. ฟังก์ชันการแบ่งสตริงแล้วเอาไปเก็บไว้ในอาร์เรย์ฟังก์ชันการแบ่งสตริงแล้วเอาไปเก็บไว้ในอาร์เรย์ - split(pattern,ข้อความ) ใช้สำหรับแบ่งสตริงแล้วไปเก็บไว้ในอาร์เรย์ โดยจะตีความ ตัวอักษรพิมพ์ใหญ่และตัวพิมพ์เล็กต่างกัน - spliti(pattern,ข้อความ) ใช้สำหรับแบ่งสตริง โดยจะตีความตัวอักษรพิมพ์ใหญ่และ ตัวพิมพ์เล็กเหมือนกัน

  19. ตัวอย่าง <? $str1 = "Computer Science, Chiang mai"; echo "before substring<br>"; echo "after substring<br>"; $array1 = split(" ",$str1); for ($i=0;$i<count($array1);$i++) echo "array1[$i]=$array1[$i]<br>"; echo "after substring with c<br>"; $array3 = spliti("c",$str1); for ($i=0;$i<count($array3);$i++) echo "array3[$i]=$array3[$i]<br>"; ?>

More Related