Go Tutorials

Go Programs

How to Reverse a String in Go


How to Reverse a String in Go ?

Answer

To reverse a string in Go, you can convert the string to a rune slice and then reverse the slice.



✐ Examples

1 Reversing "Hello World" String

In this example,

  1. We create a string named str1 with a value of "Hello World".
  2. We convert str1 to a rune slice.
  3. We reverse the rune slice.
  4. Finally, we convert the reversed rune slice back to a string and print the result.

Go Program

package main

import (
	"fmt"
	"unicode/utf8"
)

func main() {
	str1 := "Hello World"
	runes := []rune(str1)
	for i, j := 0, utf8.RuneCountInString(str1)-1; i < j; i, j = i+1, j-1 {
		runes[i], runes[j] = runes[j], runes[i]
	}
	reversedStr := string(runes)
	fmt.Println("Reversed string is:", reversedStr)
}

Output

Reversed string is: dlroW olleH

2 Reversing "apple" String

In this example,

  1. We create a string named str2 with a value of "apple".
  2. We convert str2 to a rune slice.
  3. We reverse the rune slice.
  4. Finally, we convert the reversed rune slice back to a string and print the result.

Go Program

package main

import (
	"fmt"
	"unicode/utf8"
)

func main() {
	str2 := "apple"
	runes := []rune(str2)
	for i, j := 0, utf8.RuneCountInString(str2)-1; i < j; i, j = i+1, j-1 {
		runes[i], runes[j] = runes[j], runes[i]
	}
	reversedStr := string(runes)
	fmt.Println("Reversed string is:", reversedStr)
}

Output

Reversed string is: elppa

Summary

In this tutorial, we learned How to Reverse a String in Go language with well detailed examples.




More Go Strings Tutorials

  1. How to Create an Empty String in Go ?
  2. How to get Length of String in Go ?
  3. How to get Character at Specific Index in String in Go ?
  4. How to get First Character in String in Go ?
  5. How to get Last Character in String in Go ?
  6. How to get First N Characters in String in Go ?
  7. How to get Last N Characters in String in Go ?
  8. How to get Substring after Specific Character in Go ?
  9. How to get Substring before Specific Character in Go ?
  10. How to get Substring between two Specific Characters in Go ?
  11. How to get Substring from Specific Index to End in Go ?
  12. How to Iterate over Characters in String in Go ?
  13. How to Iterate over Words in String in Go ?
  14. How to Check if String is Empty in Go ?
  15. How to Check if String contains only Alphabets in Go ?
  16. How to Check if String contains only Alphabets and Numbers in Go ?
  17. How to Check if String contains only Numeric Digits in Go ?
  18. How to Check if a String contains given Substring in Go ?
  19. How to Check if String contains specific Character in Go ?
  20. How to Check if String starts with Specific Prefix in Go ?
  21. How to Check if String ends with Specific Suffix in Go ?
  22. How to Append a String to another String in Go ?
  23. How to Append a Character to beginning of a String in Go ?
  24. How to Append a Character to end of a String in Go ?
  25. How to Concatenate Two Strings in Go ?
  26. How to Repeat a String N Times in Go ?
  27. How to Insert Character at Specific Index in String in Go ?
  28. How to Replace a Substring in String in Go ?
  29. How to Replace multiple Spaces with a Single Space in String in Go ?
  30. How to Replace Character at Specific Index in String in Go ?
  31. How to Replace All Occurrences of a Substring in a String in Go ?
  32. How to Replace a Substring in a String using Regular Expression in Go ?
  33. How to Split a String in Go ?
  34. How to Split a String by New Line in Go ?
  35. How to Split a String by Comma in Go ?
  36. How to Sort Characters in String in Go ?
  37. How to convert String to Lowercase in Go ?
  38. How to convert String to Uppercase in Go ?
  39. How to Trim a String in Go ?
  40. How to convert First Character in String to Uppercase in Go ?
  41. How to Reverse a String in Go ?
  42. How to Remove Character at specific Index in a String in Go ?
  43. How to Remove First Character in a String in Go ?
  44. How to Remove Last Character in a String in Go ?
  45. How to Remove first N Characters in a String in Go ?
  46. How to Remove last N Characters in a String in Go ?
  47. How to Remove specific Substring in Go ?
  48. How to Remove specific Character from a String in Go ?
  49. How to Remove All Whitespace Characters from a String in Go ?
  50. How to Remove Special Characters from a String in Go ?
  51. How to keep only Alphabets in a String in Go ?
  52. How to Convert Integer to String in Go ?
  53. How to Convert String to Integer in Go ?
  54. How to convert String to Float in Go ?
  55. How to convert Float to String in Go ?
  56. How to check if Two Strings are Equal in Go ?
  57. How to check if Two Strings are Equal ignoring case in Go ?
  58. How to Compare Two Strings in Go ?
  59. How to find the Characters in the First String that are not Present in the Second String in Go ?
  60. How to find the Index of Substring in Go ?
  61. How to find the Index of Last Occurrence of Substring in Go ?
  62. How to find the Indices of All Occurrences of Substring in Go ?
  63. How to get all the possible Substrings of a String in Go ?
  64. How to get all the possible K length Substrings in a String in Go ?