Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

Golang | Replacing all String which Matches with Regular Expression

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

A regular expression is a sequence of characters which define a search pattern. Go language support regular expressions. A regular expression is used for parsing, filtering, validating, and extracting meaningful information from large text, like logs, the output generated from other programs, etc.
In Go regexp, you are allowed to replace original string with another string if the specified string matches with the specified regular expression with the help of ReplaceAllString() method. In this method, $ sign means interpreted as in Expand like $1 indicates the text of the first submatch. This method is defined under the regexp package, so for accessing this method you need to import the regexp package in your program.

Syntax:

func (re *Regexp) ReplaceAllString(str, r string) string

Example 1:




// Go program to illustrate how to
// replace string with the specified regexp
package main
  
import (
    "fmt"
    "regexp"
)
  
// Main function
func main() {
  
    // Replace string with the specified regexp
    // Using ReplaceAllString() method
    m1 := regexp.MustCompile(`x(p*)y`)
  
    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "B"))
    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy--", "$1"))
    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "$1P"))
    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "${1}Q"))
  
}

Output:

B--BxxppB-
--pppxxpp--
--xxpp-
Q--pppQxxppQ-

Example 2:




// Go program to illustrate how to replace
// string with the specified regexp
package main
  
import (
    "fmt"
    "regexp"
)
  
// Main function
func main() {
  
    // Creating and initializing a string
    // Using shorthand declaration
    s := "Geeks-for-Geeks-for-Geeks-for-Geeks-gfg"
  
    // Replacing all the strings
    // Using ReplaceAllString() method
    m := regexp.MustCompile("^(.*?)Geeks(.*)$")
    Str := "${1}GEEKS$2"
    res := m.ReplaceAllString(s, Str)
    fmt.Println(res)
  
}

Output:

GEEKS-for-Geeks-for-Geeks-for-Geeks-gfg

My Personal Notes arrow_drop_up
Last Updated : 05 Sep, 2019
Like Article
Save Article
Similar Reads