Software Engineering Wiki

IsPalindrome

Returns true if the given string is a palindrome, false otherwise.

  • Use strings.Fields(), strings.Join() and strings.ToLower() to get the normalized, lowercase string without spaces.
  • Use range to iterate over the string and compare each rune to the one in the reversed string.
import "strings"

func IsPalindrome(s string) bool {
	v := strings.ToLower(strings.Join(strings.Fields(s), ""))
	for i := range v {
		if v[len(v)-i-1] != v[i] {
			return false
		}
	}
	return true
}
IsPalindrome("taco cat") // true

Last updated 15 September 2026 · Edit this page