IP 地址正则表达式 python

IP address regex python

我在使用正则表达式时遇到问题,我需要最有效的正则表达式 匹配 IP 地址且仅在 255 范围内。

我试过这个“ip_pattern = '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}'”,但它确实匹配超过 255 的偶数,例如 321.222.11.4

应该这样做:

^(?:(?: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]?)$

使用这个正则表达式。它将匹配并检查255以内的IP范围。

\b(?:25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9]).(? :25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9]).(?:25[0-5]|2 [0-4][0-9]|[0-1]?[0-9]?[0-9]).(?:25[0-5]|2[0-4][0-9 ]|[0-1]?[0-9]?[0-9])\b