Golang : Extract part of string with regular expression
Below is a simple example of how to extract a specific part of a string with the help of regular expression. For example, we are interested in extracting the part that starts with #$
from couple of strings such as
#$q4 revenue for 2017
revenue #$q2 for 2017
2017 revenue is #$q3
Here you go!
package main
import (
"fmt"
"regexp"
)
func main() {
str1 := "#$q4 revenue for 2017"
str2 := "revenue #$q2 for 2017"
str3 := "2017 revenue is #$q3"
// regular expression pattern
regE := regexp.MustCompile("\\#\\$q[1-4]")
fmt.Println(regE.FindAllString(str1, -1))
fmt.Println(regE.FindAllString(str2, -1))
fmt.Println(regE.FindAllString(str3, -1))
str4 := []string{str3, str1, str2}
for k, v := range str4 {
fmt.Println(k, regE.FindAllString(v, -1))
}
}
Output:
[#$q4]
[#$q2]
[#$q3]
0 [#$q3]
1 [#$q4]
2 [#$q2]
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+12.5k Golang : Listen and Serve on sub domain example
+14.2k Golang : Parsing or breaking down URL
+13.8k Golang : concatenate(combine) strings
+9.5k Golang : Sort and reverse sort a slice of floats
+18.9k Golang : Calculate entire request body length during run time
+8.3k PHP : How to parse ElasticSearch JSON ?
+11k Golang : Fix - does not implement sort.Interface (missing Len method)
+10.4k Golang : Bubble sort example
+19.8k Golang : Convert seconds to human readable time format example
+4.1k Golang : Converting individual Jawi alphabet to Rumi(Romanized) alphabet example
+5.6k Unix/Linux : Get reboot history or check when was the last reboot date