ความหมายและการใช้งาน
วิธีการแทนที่ () ใช้เพื่อแทนที่อักขระบางตัวด้วยอักขระอื่นในสตริง หรือแทนที่สตริงย่อยที่ตรงกับนิพจน์ทั่วไป
[Ctrl+A เพื่อเลือกทั้งหมด หมายเหตุ: หากคุณต้องการแนะนำ Js ภายนอก คุณต้องรีเฟรชก่อนดำเนินการ]
[Ctrl+A เพื่อเลือกทั้งหมด หมายเหตุ: หากคุณต้องการแนะนำ Js ภายนอก คุณต้องรีเฟรชก่อนดำเนินการ]
แต่ผลลัพธ์ยังคงไม่เปลี่ยนแปลง หากคุณคุ้นเคยกับนิพจน์ทั่วไป สิ่งนี้จะไม่รบกวนคุณ ไม่เป็นไรมีการปรับเปลี่ยนเล็กน้อย
คัดลอกรหัสรหัสดังต่อไปนี้:
<ภาษาสคริปต์ = "จาวาสคริปต์">
var strM = "javascript เป็นภาษาสคริปต์ที่ดี";
//แทนที่ตัวอักษร a ทั้งหมดด้วยตัวอักษร A ที่นี่
alert(strM.replace(/a/g,"A"));
</สคริปต์>
คุณสามารถทำได้และเห็นผล!
คัดลอกรหัสรหัสดังต่อไปนี้:
<ภาษาสคริปต์ = "จาวาสคริปต์">
var strM = "javascript เป็นภาษาสคริปต์ที่ดี";
alert(strM.replace(/(javascript)/s*(is)/g,"$1 $2 fun.it $2"));
</สคริปต์>
ตัวอย่างที่ฉันให้ไว้ที่นี่เป็นแอปพลิเคชันง่ายๆ และการแทนที่() ณ จุดนี้จะเป็นสัดส่วนโดยตรงกับความสามารถของคุณในการใช้นิพจน์ทั่วไป ยิ่งการแสดงออกของคุณแข็งแกร่งเท่าไหร่ 555 คุณจะยิ่งหลงรักมันมากขึ้นเท่านั้น
แน่นอนว่า เหตุผลที่ฉันแนะนำการแทนที่() ในที่นี้ไม่ใช่เพราะสามารถทำงานร่วมกับนิพจน์ทั่วไปได้ แต่เนื่องจากสามารถทำงานร่วมกับฟังก์ชันต่างๆ และออกแรงฟังก์ชันที่มีประสิทธิภาพได้เช่นกัน
มาดูตัวอย่างง่ายๆ ก่อน: ใช้อักษรตัวแรกของคำทั้งหมดเป็นตัวพิมพ์ใหญ่
คัดลอกรหัสรหัสดังต่อไปนี้:
<ภาษาสคริปต์ = "จาวาสคริปต์">
var strM = "javascript เป็นภาษาสคริปต์ที่ดี";
การเปลี่ยนแปลงฟังก์ชั่น (คำ)
-
กลับ word.indexOf(0).toUpperCase()+word.substring(1);
-
alert(strM.replace(//b/w+/b/g,เปลี่ยน));
</สคริปต์>
จากที่กล่าวข้างต้นจะเห็นได้ว่าเมื่อนิพจน์ทั่วไปมีแฟล็ก "g" หมายความว่าสตริงทั้งหมดจะได้รับการประมวลผล กล่าวคือ การเปลี่ยนแปลงของฟังก์ชันการเปลี่ยนแปลงจะถูกนำไปใช้กับวัตถุที่ตรงกันทั้งหมด ฟังก์ชันนี้มีพารามิเตอร์ตั้งแต่ 3 ตัวขึ้นไป และจำนวนเฉพาะจะขึ้นอยู่กับนิพจน์ทั่วไป
ด้วยการทำงานร่วมกันของฟังก์ชันและนิพจน์ทั่วไป ฟังก์ชันของสตริงการประมวลผลของแทนที่() จึงมีประสิทธิภาพมากขึ้นกว่าเดิม!
สุดท้ายนี้ ตามตัวอย่าง มันง่ายมากที่จะใช้การแทนที่() เพื่อย้อนกลับคำทั้งหมดในสตริง
คัดลอกรหัสรหัสดังต่อไปนี้:
<ภาษาสคริปต์ = "จาวาสคริปต์">
var strM = "javascript เป็นภาษาสคริปต์ที่ดี";
การเปลี่ยนแปลงฟังก์ชั่น (คำ)
-
ผลลัพธ์ var = word.match(/(/w)/g);
ถ้า(ผลลัพธ์)
-
var str = "";
สำหรับ (var i=result.length-1; i>=0; i--)
-
STR += ผลลัพธ์;
} กลับ STR;
-
อื่น
-
กลับ "โมฆะ";
-
-
alert(strM.replace(//b(/w)+/b/g,เปลี่ยน));
</สคริปต์>