วิธีลบอักขระพิเศษออกจากสตริงใน PHP

How Remove Special Characters From String Php



บางครั้ง คุณอาจต้องลบอักขระพิเศษออกจากสตริงเพื่อวัตถุประสงค์ในการเขียนโปรแกรม 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 .

บทสรุป

บทช่วยสอนนี้แสดงให้คุณเห็นสี่วิธีในการลบอักขระพิเศษออกจากข้อมูลสตริง ฉันหวังว่าบทช่วยสอนนี้จะช่วยให้ผู้อ่านใช้ฟังก์ชันที่มีให้ในบทความนี้ในสคริปต์ของตน