Open In App

JavaScript Program to Swap Characters in a String

Last Updated : 03 Oct, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, We’ll explore different approaches, understand the underlying concepts of how to manipulate strings in JavaScript and perform character swaps efficiently.

There are different approaches for swapping characters in a String in JavaScript:

Approach 1: Using Array Manipulation

In this approach, we convert the input string into an array of characters, perform the character swap using array manipulation techniques, and then convert the array back into a string.

  • Convert the String to an Array: We begin by splitting the input string into an array of individual characters. This allows us to directly access and modify characters using array indexing.
  • Swap Characters: Using array destructuring, we swap the characters at the desired positions in the array. This approach is concise and readable.
  • Convert Back to String: After swapping the characters in the array, we use the join() method to convert the modified array back into a string.

Example: Define a function to swap characters in a string using array manipulation.

Javascript




// Define a function to swap characters in a 
// string using array manipulation
function swapCharacters(inputString, index1, index2) {
    // Convert the input string into an array of characters
    let charArray = inputString.split('');
  
    // Swap the characters at the specified indices 
    // using array destructuring
    [charArray[index1], charArray[index2]] = 
        [charArray[index2], charArray[index1]];
  
    // Join the array back into a string 
    // and return the result
    return charArray.join('');
}
  
// Original string
const originalString = "example";
  
// Swap characters at index 0 and 5
const swappedString = 
    swapCharacters(originalString, 0, 5);
  
// Output the swapped string
console.log(swappedString);


Output

lxampee

Approach 2: Using String Concatenation

This approach involves breaking down the original string into substrings, rearranging them, and then concatenating them to create the swapped string.

  • Extract Substrings: We use the substring() method to extract three substrings: before the first character to swap, between the two characters to swap, and after the second character to swap.
  • Construct Swapped String: By rearranging these substrings and inserting the characters to swap in the desired positions, we construct the swapped string.

Example: Define a function to swap characters in a string using string concatenation.

Javascript




// Define a function to swap characters in 
// a string using string concatenation
function swapCharactersConcat(inputString, index1, index2) {
  
    // Extract characters at the specified indices
    const charAtIndex1 = inputString[index1];
    const charAtIndex2 = inputString[index2];
  
    // Create a new string with characters swapped
    const swappedString = inputString.substring(0, index1) +
        charAtIndex2 +
        inputString.substring(index1 + 1, index2) +
        charAtIndex1 +
        inputString.substring(index2 + 1);
  
    // Return the swapped string
    return swappedString;
}
  
// Original string
const originalString = "example";
  
// Swap characters at index 0 and 5
const swappedString = 
    swapCharactersConcat(originalString, 0, 5);
  
// Output the swapped string
console.log(swappedString);


Output

lxampee

Approach 3: Using Regular Expressions

Using regular expressions, we can capture the characters to be swapped and rearrange them accordingly, resulting in the desired swapped string.

  • Create a Pattern: We define a regular expression pattern that captures groups of characters, including those before and after the characters to swap.
  • Create a Replacement Pattern: A replacement pattern is crafted to rearrange the captured groups, effectively swapping the characters in the string.
  • Apply the Regular Expression: We use the replace() method with the regular expression and the replacement pattern to perform the character swap.

Example: Define a function to swap characters in a string using regular expressions

Javascript




// Define a function to swap characters in a 
// string using regular expressions
function swapCharactersRegex(inputString, index1, index2) {
  
    // Create a pattern that captures substrings 
    // before, between, and after the indices
    const pattern = 
        `(.{${index1}})(.)(.{${index2 - index1 - 1}})(.)(.*)`;
  
    // Create a replacement pattern that reorders 
    // the captured groups
    const replacement = `$1$4$3$2$5`;
  
    // Use the regular expression to replace the 
    // captured substrings and swap the characters
    const swappedString = 
        inputString.replace(new RegExp(pattern), replacement);
  
    // Return the swapped string
    return swappedString;
}
  
// Original string
const originalString = "example";
  
// Swap characters at index 0 and 5
const swappedString = 
    swapCharactersRegex(originalString, 0, 5);
  
// Output the swapped string
console.log(swappedString);


Output

lxampee


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads