Golang : Find IP address from string
In this short tutorial, we will learn how to get the first occurrence of an IP address in a given string by searching for a matching pattern with regular expression.
package main
import (
"fmt"
"regexp"
)
func findIP(input string) string {
numBlock := "(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])"
regexPattern := numBlock + "\\." + numBlock + "\\." + numBlock + "\\." + numBlock
regEx := regexp.MustCompile(regexPattern)
return regEx.FindString(input)
}
func main() {
var ip string
str := "this is a string that contain IP address 192.168.0.1 and you need to parse it"
ip = findIP(str)
fmt.Printf("The IP address in string is %q \n", ip)
}
Output :
go run parseipfromstring.go
The IP address in string is "192.168.0.1"
See also : Get client IP Address in Go
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
+9.8k Golang : Intercept and process UNIX signals example
+15k Golang : Fix cannot convert buffer (type *bytes.Buffer) to type string error
+12k Golang : error parsing regexp: invalid or unsupported Perl syntax
+9.7k Golang : Natural string sorting example
+8.1k Golang : Extract or copy items from map based on value
+7.8k Golang : HTTP Routing with Goji example
+10.2k Golang : How to flush a channel before the end of program?
+6k Javascript : How to get JSON data from another website with JQuery or Ajax ?
+27k Golang : Detect (OS) Operating System
+50k Golang : Check if item is in slice/array
+13.4k Golang : Find commonalities in two slices or arrays example
+9.7k Golang : How to determine a prime number?