Regular Expressions 101

Community Library Entry

1

Regular Expression
Golang

`
^(?:(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\/(?:3[0-2]|[12]*\d)){0,1}[,|-])*(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\/(?:3[0-2]|[12]*\d)){0,1}$
`
gm

Description

Simple Regex to **validate ** (no extraction!) an IPv4 Range which can be a comma separated mixture of

  • IPv4 addresses
  • IPv4 CIDRs
  • IPv4 Ranges like 1.1.1.1-1.1.1.10

Examples :

192.168.1.1,255.255.255.255/32,10.10.10.10/24,0.0.0.0/24 192.168.1.1/32 192.168.1.1 192.168.1.1/32 192.168.1.1/12 192.168.1.1/24 192.168.1.1/24 192.168.1.1/0,192.168.1.1/0 10.0.0.0/24 172.16.0.1-172.16.0.255 192.168.1.1,10.0.0.1/24,172.16.0.1-172.16.0.10 64.33.232.212 64.33.232.210/24

Submitted by alucab - a month ago