2014-09-30 2 views
1

Я пытаюсь создать шаблон HTML5 для ввода текста с и IP-адреса и маски вместе, как это:HTML5 шаблон для проверки IP с маской

10.120.15.30/28 или 172.181.30.0/24

я нашел один шаблон html5 на http://html5pattern.com/Miscs, но только для IPv4 без маски

((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){4}$ 

Я пытался добавить, прежде чем

(\/).((([0-2])|(0-9))|(3[1-2])) 

но не работает. Есть идеи?

+0

Как веб-страницу, чтобы проверить шаблон есть http://html5pattern.com/Make_Your_Own, где я» m тестирование моделей –

ответ

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

Demo.

Я просто добавил /(?:\d|[12]\d|3[01]) образцу вы предоставили:

/ // match a slash 
(?: // then match either one of 
    \d // a single digit 
| 
    [12]\d // any number from 10 to 29 
| 
    3[01] // 30 or 31 
) 
+0

Отлично! Я использовал только html5patterns, но с регулярным выражением, которое работает как шарм. Спасибо! :) –

+1

Не префиксы только 24-31, как в http://en.wikipedia.org/wiki/Subnetwork#Subnet_and_host_counts, то есть '(/ (2 [4-9] | 3 [01]))?' – Oleg

+0

Вы правы. Я починил это. –

Смежные вопросы