Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

How to Replace Substring in a String in Go?

Go – Replace Substring in a String

To replace a substring in string with a new value in Go programming, we can use either Replace function or
ReplaceAll function of the strings package.

Replace function replaces only specified N occurrences of the substring, while ReplaceAll function
replaces all the occurrences of given substring with the new value.

The syntax of Replace function is

strings.Replace(str, replace, newValue, n)

Replace function returns a new string with the first n occurrences of replace string replaced with
newValue string in str string.

If n is -1 , then there is no limit on the number of replacements.

The syntax of ReplaceAll function is

strings.ReplaceAll(str, replace, newValue)

ReplaceAll function returns a new string with all occurrences of replace string replaced with
newValue string in str string.

Examples

Let us go through some of the examples using Replace and ReplaceAll functions.

Replace

In the following example, we take a string, str and replace first 2 occurrences of the substring replace
with a new value newValue .

example.go
example.go

package main

import (
"fmt"
"strings"
)

func main() {
str := "Abc Abc Abc Abc Abc"
replace := "Abc"
newValue := "Mnop"
n := 2
result := strings.Replace(str, replace, newValue, n)
fmt.Println("Original String : ", str)
fmt.Println("Result String : ", result)
}

Output

Original String : Abc Abc Abc Abc Abc


Result String : Mnop Mnop Abc Abc Abc

As specified via n , only the first two occurrences have been replaced.

Now, let us set n with -1 . All the occurrences of the replace string must be replaced with the new
value.

example.go

package main

import (
"fmt"
"strings"
)

func main() {
str := "Abc Abc Abc Abc Abc"
replace := "Abc"
newValue := "Mnop"
n := -1
result := strings.Replace(str, replace, newValue, n)
fmt.Println("Original String : ", str)
fmt.Println("Result String : ", result)
}

Output

Original String : Abc Abc Abc Abc Abc


Result String : Mnop Mnop Mnop Mnop Mnop
ReplaceAll

In the following example, we take a string, str and replace all the occurrences of the substring replace
with a new value newValue .

example.go

package main

import (
"fmt"
"strings"
)

func main() {
str := "Abc Abc Abc Abc Abc"
replace := "Abc"
newValue := "Mnop"
result := strings.ReplaceAll(str, replace, newValue)
fmt.Println("Original String : ", str)
fmt.Println("Result String : ", result)
}

Output

Original String : Abc Abc Abc Abc Abc


Result String : Mnop Mnop Mnop Mnop Mnop

All the occurrences of the given substring are replaced with new value.

Conclusion

In this Golang Tutorial, we learned how to replace a substring with new value in a string, in Go programming
language, with the help of example programs.

Golang

✦ Golang Tutorial

✦ Run Golang Program

✦ Golang If Else

✦ Golang Switch

✦ Golang For Loop

✦ Golang Comments
✦ Golang Comments

✦ Golang Functions

✦ Golang Array

✦ Golang Slice

✦ Golang Struct

✦ Golang Class

✦ Golang Range

✦ Golang Map

✦ Golang Goroutine

✦ Golang Channel

Golang String Operations

✦ Golang String Length

✦ Golang String Concatenation

✦ Golang Split String

✦ Golang String - Get Index of Substr

✦ Golang String to Uppercase

✦ Golang String to Lowercase

✦ Golang Convert String to Integer

You might also like