Masukkan satu aksara selepas setiap n aksara dalam JavaScript

WBOY
Lepaskan: 2023-08-24 13:37:13
ke hadapan
1169 orang telah melayarinya

JavaScript 中每 n 个字符后插入一个字符

Menyisipkan aksara tertentu selepas setiap n aksara dalam Javascript ialah konsep yang mudah difahami yang membolehkan kami memahami dengan lebih baik fungsi Javascript.

Di sini n boleh menjadi sebarang integer daripada 1 hingga kurang daripada panjang rentetan.

Dalam artikel ini, kami akan menangani inputString pembolehubah = "abcdefghijklmnopqrstuvwxyz" dan bertujuan untuk menambahkan aksara "-" selepas setiap 5 aksara. Terdapat pelbagai cara untuk melakukan ini menggunakan JavaScript seperti yang ditunjukkan di bawah -

Gunakan kaedah slice()

Dalam JavaScript, fungsi slice() digunakan untuk mengekstrak sebahagian daripada rentetan yang diberikan dan mengembalikan rentetan baharu. Kaedah ini menerima dua parameter: indeks permulaan dan indeks penamat subrentetan yang akan diekstrak. Subrentetan mengandungi indeks permulaan tetapi bukan indeks penamat.

Contoh

let inputString = "Tutorials Point Simply Easy Learning";
let n = 5; // specify after how many characters does the specified character have to be inserted
let insertChar = "-";
let outputString = "";
for (let i = 0; i < inputString.length; i += n) {
   let slice = inputString.slice(i, i + n);
   if(slice.length==n)
      outputString += slice + insertChar;
   else
      outputString += slice;
}
console.log(outputString);
Salin selepas log masuk

Output

Tutor-ials -Point- Simp-ly Ea-sy Le-arnin-g
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Gunakan kaedah replace() dengan ungkapan biasa

Dalam JavaScript, kaedah replace() digunakan untuk menggantikan subrentetan tertentu atau padanan ungkapan biasa dengan rentetan baharu. Kaedah ini menerima dua parameter: subrentetan atau ungkapan biasa yang akan diganti dan rentetan baharu yang akan dipadankan dengan subrentetan atau ungkapan biasa yang diganti Ini membolehkan kami melakukan penggantian rentetan yang kompleks.

Contoh

let inputString = "Tutorials Point Simply Easy Learning";
let n = 5;
let insertChar = "-";
let outputString = inputString.replace(new RegExp(`.{${n}}`, 'g'), '$&' +
insertChar);
console.log(outputString);
Salin selepas log masuk

Output

Tutor-ials -Point- Simp-ly Ea-sy Le-arnin-g
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Gunakan split() dan kurangkan()

Kaedah

split() digunakan untuk memisahkan rentetan kepada tatasusunan subrentetan. Kaedah ini mengambil parameter yang dipanggil pembatas. Ia digunakan untuk menentukan titik perpecahan rentetan.

Kaedah

reduce() ialah fungsi peringkat lebih tinggi. Tujuannya adalah untuk memproses dan mengurangkan tatasusunan menjadi satu nilai. Kaedah ini menerima dua parameter, fungsi panggil balik dan nilai awal pilihan. Fungsi panggil balik digunakan pada setiap elemen dalam tatasusunan, dan nilai pulangan fungsi dihantar ke lelaran seterusnya sebagai penumpuk. Nilai pulangan akhir fungsi ialah nilai yang dikurangkan. Ia boleh digunakan bersama untuk memasukkan aksara selepas setiap n aksara.

Contoh

let inputString = "Tutorials Point Simply Easy Learning";
let n = 5; // insert a character after every 5 characters
let insertChar = "-";
let outputString = inputString.split("").reduce(function(acc, val, i) {
   return i % n === 0 && i !== 0 ? acc + insertChar + val : acc + val;
}, "");
console.log(outputString);
Salin selepas log masuk

Output

Tutor-ials -Point- Simp-ly Ea-sy Le-arnin-g
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Gunakan substr() dan concat()

Kaedah substr() dalam JavaScript digunakan untuk mengekstrak subrentetan daripada rentetan tertentu, bermula daripada indeks tertentu dan berterusan untuk bilangan aksara tertentu. Kaedah ini mengambil dua parameter: indeks permulaan dan bilangan aksara yang terkandung dalam subrentetan.

Kaedah concat() dalam JavaScript digunakan untuk menggabungkan dua atau lebih tatasusunan atau rentetan bersama-sama. Kaedah ini menerima satu atau lebih tatasusunan atau rentetan sebagai argumen dan mengembalikan tatasusunan atau rentetan baharu yang mengandungi semua elemen tatasusunan atau rentetan asal.

Contoh

let inputString = "abcdefghijklmnopqrstuvwxyz";
let n = 5; // insert a character after every 5 characters
let insertChar = "-";
let outputString = "";
for (let i = 0; i < inputString.length; i += n) {
   let slice = inputString.substr(i, n);
   if(slice.length==n)
      outputString = outputString.concat(slice, insertChar);
   else
      outputString = outputString.concat(slice);
}
console.log(outputString);
Salin selepas log masuk

Output

abcde-fghij-klmno-pqrst-uvwxy-z
Salin selepas log masuk

Kesimpulan

Terdapat banyak cara untuk memasukkan aksara selepas setiap n aksara dalam rentetan dalam JavaScript, seperti menggunakan kaedah slice() digabungkan dengan kaedah for loop, replace() digabungkan dengan kaedah biasa, split() dan join(), substr () dan kaedah concat(), dsb. Pendekatan khusus yang anda pilih akan bergantung pada keperluan kes penggunaan anda dan keutamaan peribadi anda untuk kebolehbacaan dan kebolehselenggaraan kod. Adalah baik untuk mengetahui bahawa semua kaedah ini mempunyai kerumitan masa linear O(n). Perlu diingat bahawa menggunakan kaedah yang lebih cekap boleh membuat perbezaan yang ketara dalam prestasi apabila mengendalikan rentetan besar.

Atas ialah kandungan terperinci Masukkan satu aksara selepas setiap n aksara dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!