Home > Web Front-end > JS Tutorial > body text

Insert one character after every n characters in JavaScript

WBOY
Release: 2023-08-24 13:37:13
forward
1211 people have browsed it

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

Inserting a specific character after every n characters in Javascript is an easy-to-understand concept that allows us to better understand the functionality of Javascript.

Here n can be any integer from 1 to less than the length of the string.

In this article, we will deal with the variable inputString = "abcdefghijklmnopqrstuvwxyz" and aim to append a "-" character after every 5 characters. There are multiple ways to do this using JavaScript, as shown below -

Use slice() method

In JavaScript, the slice() function is used to extract a portion of a given string and return a new string. This method accepts two parameters: the starting index and the ending index of the substring to be extracted. The substring contains the starting index but not the ending index.

Example

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);
Copy after login

Output

Tutor-ials -Point- Simp-ly Ea-sy Le-arnin-g
Copy after login
Copy after login
Copy after login

Use the replace() method with regular expressions

In JavaScript, the replace() method is used to replace a specific substring or regular expression match with a new string. This method accepts two parameters: the substring or regular expression to be replaced and the new string that will be matched by the replaced substring or regular expression. This allows us to perform complex string replacements.

Example

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

Output

Tutor-ials -Point- Simp-ly Ea-sy Le-arnin-g
Copy after login
Copy after login
Copy after login

Use split() and reduce()

split() method is used to split a string into an array of substrings. This method takes a parameter called delimiter. It is used to specify the split point of the string.

reduce()The method is a higher-order function. Its purpose is to process and reduce an array into a single value. This method accepts two parameters, a callback function and an optional initial value. The callback function is applied to each element in the array, and the return value of the function is passed to the next iteration as an accumulator. The final return value of the function is the reduced value. They can be used together to insert a character after every n characters.

Example

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);
Copy after login

Output

Tutor-ials -Point- Simp-ly Ea-sy Le-arnin-g
Copy after login
Copy after login
Copy after login

Use substr() and concat()

The substr() method in JavaScript is used to extract a substring from a given string, starting at a specified index and continuing for a specified number of characters. This method takes two parameters: the starting index and the number of characters contained in the substring.

The concat() method in JavaScript is used to concatenate two or more arrays or strings together. This method accepts one or more arrays or strings as arguments and returns a new array or string containing all elements of the original array or string.

Example

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);
Copy after login

Output

abcde-fghij-klmno-pqrst-uvwxy-z
Copy after login

in conclusion

There are many ways to insert a character after every n characters in a string in JavaScript, such as using the slice() method combined with a for loop, the replace() method combined with regular expressions, split() and join() methods , substr() and concat() methods, etc. The specific approach you choose will depend on the requirements of your use case and your personal preferences for code readability and maintainability. It's good to know that all these methods have linear time complexity O(n). Keep in mind that when dealing with large strings, using a more efficient method may make a significant difference in performance.

The above is the detailed content of Insert one character after every n characters in JavaScript. For more information, please follow other related articles on the PHP Chinese website!

source:tutorialspoint.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template