這裏講的是IPv4的地址格式,總長度 32位=4段*8位,每段之間用.分割, 每段都是0-255之間的十進制數值。正則表達式
將0-255用正則表達式表示,能夠分紅一下幾塊來分別考慮:table
取值區間 | 特色 | 正則寫法 | 可合併的寫法 | 可合併的寫法 | 可合併的寫法 |
0-9 | 一位數,只有個位,取值是0~9 | \d | [1-9]?\d | (1\d{2})|([1-9]?\d) | (25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))tab |
10-99分割 |
兩位數,十位取值1-9,個位取值是0~9 | [1-9]\d | |||
100-199 | 三位數,最高位取值爲1,十位取值0-9,個位取值0-9 | 1\d{2} | - | ||
200-249 | 三位數,最高位取值爲2,十位取值0-4,個位取值0-9 | 2[0-4]\d | - | - | |
250-255 | 三位數,最高位取值爲2,十位取值5,個位取值0-5 | 25[0-5] | - | - |
IP地址格式可表示爲:XXX.XXX.XXX.XXX,XXX取值範圍是0-255,前三段加一個.重複了三次,在與最後一段合併及組成IP地址的完整格式。ab
因此IP地址的正則表示法以下:
((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))