How to reverse a word in a string with Go

1 Answer

0 votes
package main

import (
    "fmt"
    "strings"
)

func reverseWord(str, word string) string {
    pos := strings.Index(str, word)
    
    if pos != -1 {
        reversed := reverseString(word)
        return str[:pos] + reversed + str[pos+len(word):]
    }
    
    return str
}

func reverseString(s string) string {
    runes := []rune(s)
    
    for i, j := 0, len(runes) - 1; i < j; i, j = i + 1, j - 1 {
        runes[i], runes[j] = runes[j], runes[i]
    }
    
    return string(runes)
}

func main() {
    str := "C++ C Java Python PHP C# Go"
    word := "Java"

    result := reverseWord(str, word)
    fmt.Println(result)
}



/*
run:

C++ C avaJ Python PHP C# Go

*/

 



answered Sep 26, 2025 by avibootz
...