Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Golang | Replacing all String which Matches with Regular Expression

  • Last Updated : 05 Sep, 2019

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
Recommended Articles
Page :

Start Your Coding Journey Now!