บางครั้ง คุณอาจต้องลบอักขระพิเศษออกจากสตริงเพื่อวัตถุประสงค์ในการเขียนโปรแกรม PHP มีฟังก์ชันในตัวมากมายที่สามารถใช้เพื่อลบอักขระพิเศษออกจากข้อมูลสตริง บทช่วยสอนนี้จะแสดงให้คุณเห็นถึงวิธีใช้ฟังก์ชัน PHP ในตัวประเภทต่างๆ เพื่อลบอักขระพิเศษออกจากสตริง
ฟังก์ชัน str_replace()
ฟังก์ชันที่มีประโยชน์อย่างหนึ่งที่สามารถใช้เพื่อลบอักขระพิเศษออกจากสตริงคือ str_replace() การทำงาน. ต้องใช้สตริงว่างกับอักขระแทนที่ในฟังก์ชันนี้เพื่อลบอักขระที่ระบุ ไวยากรณ์ของฟังก์ชันนี้แสดงไว้ด้านล่าง
str_replace ($search_str, $replace_str, $main_str [,$count ])
NS str_replace() ฟังก์ชันสามารถรับอาร์กิวเมนต์ได้สี่อาร์กิวเมนต์ อาร์กิวเมนต์สามตัวแรกเป็นอาร์กิวเมนต์บังคับ และอาร์กิวเมนต์สุดท้ายเป็นทางเลือก NS $search_str ตัวแปรเก็บค่าที่จะค้นหาในสตริง NS $replace_str ตัวแปรเก็บค่าที่จะถูกแทนที่จากสตริงที่ข้อความค้นหาตรงกัน คุณต้องใช้สตริงว่างเป็นค่าของ $replace_str ตัวแปรเพื่อลบข้อความค้นหาออกจากสตริงหลัก NS $count อาร์กิวเมนต์เก็บค่าที่แสดงจำนวนอักขระที่ถูกแทนที่หรือลบออก
ตัวอย่าง: การใช้ str_replace() เพื่อลบอักขระพิเศษ
สคริปต์ต่อไปนี้แสดงการใช้ str_replace() ฟังก์ชันลบอักขระพิเศษออกจากสตริงข้อมูล มีการประกาศฟังก์ชันที่ผู้ใช้กำหนดในสคริปต์เพื่อดำเนินการแทนที่ NS hash(#), single quote(‘) และ semicolon(;) อักขระถูกใช้เป็นอักขระค้นหา ในขณะที่สตริงว่างถูกใช้เป็นข้อความแทนที่สำหรับอักขระเหล่านี้
/* สคริปต์ต่อไปนี้จะลบบางส่วน
อักขระพิเศษจากสตริงโดยใช้ str_replace()
การทำงาน
* /
//กำหนดสตริงหลัก
$mainstr = '#นี่เป็นข้อความง่ายๆ';
//ผลลัพธ์ก่อนลบ
โยนออก ' ข้อความก่อนลบ:
'.$mainstr;
//เรียกใช้ฟังก์ชัน
$replacestr =rm_special_char($mainstr);
//กำหนดฟังก์ชันเพื่อลบอักขระเว้นวรรค
การทำงานrm_special_char($ str) {
//ลบ '#',''' และ ';' ใช้ฟังก์ชัน str_replace()
$ผลลัพธ์ = str_replace ( อาร์เรย์ ('#', '' ', ';'), '', $ str);
//ผลลัพธ์หลังจากลบ
โยนออก '
ข้อความหลังจากลบ:
'.$ผลลัพธ์;
}
?>
เอาท์พุต
ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันสคริปต์ที่ระบุด้านบน ค่าของข้อความหลักจะถูกพิมพ์ก่อนเรียก str_replace() และอักขระพิเศษสามตัวจะถูกลบออกจากข้อความหลักและพิมพ์ในภายหลัง
ฟังก์ชัน preg_replace()
NS preg_replace() ฟังก์ชันใช้เพื่อแทนที่ข้อมูลสตริงตามรูปแบบการค้นหา ไวยากรณ์ของฟังก์ชันนี้แสดงไว้ด้านล่าง
preg_replace ( $pattern, $replace, $string [,$limit [,$count]] )ฟังก์ชันนี้สามารถรับอาร์กิวเมนต์ได้ห้าอาร์กิวเมนต์ อาร์กิวเมนต์สามตัวแรกเป็นอาร์กิวเมนต์บังคับ และอาร์กิวเมนต์สองอาร์กิวเมนต์สุดท้ายเป็นทางเลือก NS $pattern อาร์กิวเมนต์ใช้เพื่อกำหนดรูปแบบการค้นหาอักขระในสตริง NS $replace อาร์กิวเมนต์ใช้เพื่อกำหนดข้อความแทนที่ และข้อความแทนที่จะเป็นสตริงว่างที่ใช้สำหรับลบอักขระพิเศษ NS $string อาร์กิวเมนต์ใช้เพื่อกำหนดสตริงหลักที่จะค้นหาและแทนที่รูปแบบ
ตัวอย่าง: การใช้ preg_replace() เพื่อลบอักขระพิเศษ
สคริปต์ต่อไปนี้แสดงการใช้ preg_replace() ฟังก์ชันเพื่อลบอักขระพิเศษเฉพาะออกจากข้อมูลสตริง รูปแบบ '[0-9][0-9%$?]/s' ใช้ในฟังก์ชันเพื่อค้นหาอักขระ สิ่งนี้จะค้นหาอักขระทั้งหมด '%,' '$,' และ '?' ในข้อมูลสตริงและแทนที่อักขระเหล่านี้ด้วยสตริงว่างหากมีอักขระอยู่
/* สคริปต์ต่อไปนี้จะลบบางส่วน
อักขระพิเศษจากสตริงโดยใช้ preg_replace()
การทำงาน
* /
//กำหนดสตริงหลัก
$mainstr = '200ฉันชอบ$phpการเขียนโปรแกรม50%?.';
//ผลลัพธ์ก่อนลบ
โยนออก ' ข้อความก่อนลบ:
'.$mainstr;
//เรียกใช้ฟังก์ชัน
$replacestr =rm_special_char($mainstr);
//กำหนดฟังก์ชันเพื่อลบอักขระเว้นวรรค
การทำงานrm_special_char($ str) {
//ลบ '#',''' และ ';' ใช้ฟังก์ชัน str_replace()
$ผลลัพธ์ = preg_replace ('/[0-9%$?]/วินาที','', $ str);
//ผลลัพธ์หลังจากลบ
โยนออก '
ข้อความหลังจากลบ:
'.$ผลลัพธ์;
}
?>
เอาท์พุต
ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันสคริปต์ ค่าของข้อความหลักจะถูกพิมพ์ก่อนเรียก preg_replace() การทำงาน. NS 200, 50, '%,' และ '?' อักขระจะถูกลบออกจากข้อความหลักและพิมพ์ในภายหลัง
NS htmlspecialchars() และ str_ireplace () ฟังก์ชั่น
NS htmlspecialchars() และ str_ireplace () ฟังก์ชันใช้เพื่อแปลงอักขระที่กำหนดไว้ล่วงหน้าทั้งหมดเป็น HTML ตัวอย่างเช่น, ' < ' จะถูกแปลงเป็น ' & lt , '' & ' จะถูกแปลงเป็น ' & ' ฯลฯ คุณสามารถใช้ฟังก์ชันเหล่านี้เพื่อลบเอฟเฟกต์ของอักขระที่กำหนดไว้ล่วงหน้าออกจากข้อมูลสตริงได้
ตัวอย่าง: การใช้ htmlspecialchars() และ str_ireplace () เพื่อลบอักขระพิเศษ
สคริปต์ต่อไปนี้แสดงวิธีการลบเอฟเฟกต์ของอักขระที่กำหนดไว้ล่วงหน้าออกจากสตริงโดยใช้ htmlspecialchars() การทำงาน. จากนั้น str_ireplace () ฟังก์ชันใช้เพื่อลบเอนทิตี HTML ออกจากข้อความ NS str_ireplace () ฟังก์ชั่นทำงานเหมือน str_replace() ฟังก์ชัน แต่สามารถทำการค้นหาแบบคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ได้ สตริงหลักมีข้อความด้วย< ชั่วโมง2 > และ< NS > แท็ก ดังนั้น เมื่อพิมพ์ข้อความก่อนที่จะลบเอฟเฟกต์ของอักขระที่กำหนดไว้ล่วงหน้า สตริงจะแสดงพร้อมกับเอฟเฟกต์ของส่วนหัว HTML และแท็กตัวหนา ข้อความธรรมดาจะแสดงขึ้นหลังจากใช้ฟังก์ชันที่กำหนด
//กำหนดสตริงหลัก
$mainstr = '
ยินดีต้อนรับสู่ Linuxคำแนะนำ
';//ผลลัพธ์ที่มีแท็ก HTML
โยนออก 'ข้อความก่อนลบ:'.$mainstr;
//ผลลัพธ์หลังจากลบแท็ก HTML
โยนออก 'ข้อความหลังจากลบ:
'.
str_ireplace ( อาร์เรย์ (' ', ' ','
'
,''),'',htmlspecialchars ($mainstr));
?>
เอาท์พุต
ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันสคริปต์
ฟังก์ชั่น trim()
NS ฟังก์ชัน trim() ใช้เพื่อลบอักขระเฉพาะออกจากจุดเริ่มต้นและจุดสิ้นสุดของสตริงข้อมูล ฟังก์ชันนี้ไม่สามารถลบอักขระออกจากตรงกลางของสตริงข้อมูลได้ ดังนั้น คุณสามารถใช้ฟังก์ชันนี้ได้เฉพาะในกรณีที่คุณต้องการลบอักขระพิเศษออกจากจุดเริ่มต้นและจุดสิ้นสุดของสตริง
ตัวอย่าง: การใช้ the trim() ฟังก์ชั่น เพื่อลบอักขระพิเศษ
สคริปต์ต่อไปนี้แสดงการใช้ ฟังก์ชัน trim() เพื่อลบ ' @ ' และ ' ! ’ อักขระจากจุดเริ่มต้นและจุดสิ้นสุดของตัวแปรสตริง $mainstr . ค่าของ $mainstr ตัวแปรจะถูกพิมพ์ทั้งก่อนและหลังการลบอักขระ
//กำหนดสตริงหลัก
$mainstr = '@@การเขียนโปรแกรมเว็บ!!!.';
//ผลลัพธ์ก่อนใช้ trim()
โยนออก ' ข้อความก่อนลบ:
'.$mainstr;
//ผลลัพธ์หลังจากใช้ trim()
โยนออก '
ข้อความหลังจากลบ:
'. ตัดแต่ง ($mainstr,'@!');
?>
เอาท์พุต
ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันสคริปต์ ที่นี่สอง ' @ ' อักขระจะถูกลบออกจากจุดเริ่มต้นและสาม ' ! ’ อักขระจะถูกลบออกจากส่วนท้ายของตัวแปรสตริง $mainstr .
บทสรุป
บทช่วยสอนนี้แสดงให้คุณเห็นสี่วิธีในการลบอักขระพิเศษออกจากข้อมูลสตริง ฉันหวังว่าบทช่วยสอนนี้จะช่วยให้ผู้อ่านใช้ฟังก์ชันที่มีให้ในบทความนี้ในสคริปต์ของตน