Rust:
การค้นหาและแทนที่ข้อความ
วิธีทำ:
fn main() {
let text = "Hello there!";
let updated_text = text.replace("there", "world");
println!("{}", updated_text); // จะพิมพ์ "Hello world!"
}
ตัวอย่างผลลัพธ์:
Hello world!
Deep Dive
การค้นหาและแทนที่ข้อความได้มีมาตั้งแต่เครื่องมือแก้ไขข้อความเริ่มมีขึ้น อุปกรณ์เช่น sed ใน Unix ทำให้การประมวลผลข้อความเป็นกลุ่มกลายเป็นปฏิบัติการทั่วไป
Rust นำเสนอวิธีการที่มีประสิทธิภาพและปลอดภัย วิธี replace
จากไลบรารีมาตรฐานของประเภท str
นั้นตรงไปตรงมาและตรวจสอบที่เวลาคอมไพล์
ทางเลือกสำหรับ replace
รวมถึง regex สำหรับรูปแบบที่ซับซ้อน หรือการทำซ้ำตัวอักษรเพื่อปรับแต่งโลจิกการแทนที่
ภายใต้ฝาครอบ, replace
ใน Rust สร้าง String
ใหม่, ทำการทำซ้ำผ่านข้อความต้นฉบับ, ค้นหาคำที่ตรงกัน, และจากนั้นสร้างข้อความใหม่พร้อมการแทนที่ มันจัดการกับ Unicode ได้ดีซึ่งไม่ใช่เรื่องง่าย
ดูเพิ่มเติม
- เอกสารของ Rust เกี่ยวกับ
replace
: https://doc.rust-lang.org/std/primitive.str.html#method.replace - กล่องสำหรับรูปแบบที่ซับซ้อนยิ่งขึ้น: https://crates.io/crates/regex
- คู่มือของ Sed สำหรับการอ้างอิงทางประวัติศาสตร์: https://www.gnu.org/software/sed/manual/sed.html