ฉันต้องการลบอักขระพิเศษออกจากสตริงและแทนที่ด้วย_
อักขระ
ตัวอย่างเช่น:
string = "img_realtime_tr~ading3$"
สตริงผลลัพธ์ควรมีลักษณะดังนี้ "img_realtime_tr_ading3_";
ฉันต้องการแทนที่อักขระเหล่านั้น: & / \ # , + ( ) $ ~ % .. ' " : * ? < > { }
ฉันต้องการลบอักขระพิเศษออกจากสตริงและแทนที่ด้วย_
อักขระ
ตัวอย่างเช่น:
string = "img_realtime_tr~ading3$"
สตริงผลลัพธ์ควรมีลักษณะดังนี้ "img_realtime_tr_ading3_";
ฉันต้องการแทนที่อักขระเหล่านั้น: & / \ # , + ( ) $ ~ % .. ' " : * ? < > { }
คำตอบ:
string = string.replace(/[&\/\\#,+()$~%.'":*?<>{}]/g,'_');
หรือหากต้องการเปลี่ยนตัวอักษรทั้งหมดยกเว้นตัวเลขและตัวอักษรให้ลอง:
string = string.replace(/[^a-zA-Z0-9]/g,'_');
!
ขาดหายไปในบรรทัดแรก
\-
และ=
หายไปด้วย :)
hello! word
คุณจะลงเอยด้วยเครื่องหมายขีดล่างสองอันติดต่อกันเช่นนี้hello__word
คุณสามารถทำได้:string = string.replace(/[^a-zA-Z0-9]/g,'_').replace(/__/g,'_');
string = string.replace(/[^a-zA-Z0-9]/g,'_').replace(/_{2,}/g,'_');
คุณจะไม่รู้ว่ากี่อันต่อเนื่องกัน
string = string.replace(/[\W_]/g, "_");