เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงที่มีข้อความของย่อหน้าเป็นอาร์กิวเมนต์แรก และจำนวนขนาดอันเป็นอาร์กิวเมนต์ที่สอง
ฟังก์ชันควรทำสิ่งต่อไปนี้ -
-
แบ่งสตริงออกเป็นชิ้น ๆ ที่มีความยาวไม่เกินขนาด (อาร์กิวเมนต์ที่สอง)
-
การทำลายควรเกิดขึ้นที่ช่องว่างหรือส่วนท้ายประโยคเท่านั้น (ไม่ควรแยกคำ)
ตัวอย่างเช่น − หากสตริงอินพุตคือ −
const str = 'this is a string'; const chunkLength = 6;
จากนั้นผลลัพธ์ควรเป็น −
const output = ['this', 'is a', 'string'];
ให้เราเขียนโค้ดสำหรับฟังก์ชันนี้ -
เราจะใช้นิพจน์ทั่วไปเพื่อให้ตรงกับจำนวนอักขระที่ระบุ เมื่อจับคู่แล้ว เราจะย้อนรอยจนกว่าเราจะพบช่องว่างหรือจุดสิ้นสุดของสตริง
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const size = 200; const str = "This process was continued for several years for the deaf child does not here in a month or even in two or three years the numberless items and expressions using the simplest daily intercourse little hearing child learns from these constant rotation and imitation the conversation he hears in his home simulates is mine and suggest topics and called forth the spontaneous expression of his own thoughts."; const splitString = (str = '', size) > { const regex = new RegExp(String.raw`\S.{1,${size &minu; 2}}\S(?= |$)`, 'g'); const chunks = str.match(regex); return chunks; } console.log(splitString(str, size));
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
[ 'This process was continued for several years for the deaf child does not here in a month or even in two or three years the numberless items and expressions using the simplest daily intercourse little', 'hearing child learns from these constant rotation and imitation the conversation he hears in his home simulates is mine and suggest topics and called forth the spontaneous expression of his own', 'thoughts.' ]