Атрибут pattern элемента HTML <input>
Определение и использование
pattern
Атрибут определяет регулярное выражение, которое проверяет значение элемента <input> при отправке формы.
Обратите внимание:pattern
Атрибут applies к следующим типам ввода:
- text
- date
- search
- url
- tel
- password
Совет:Используйте Глобальный атрибут title описать этот шаблон, чтобы помочь пользователям понять.
Совет:Пожалуйста, в нашем Уроки JavaScript Узнайте больше о регулярных выражениях на нашем курсе.
Пример
Пример 1
Ниже приведена HTML-форма с одним полем ввода, которое может содержать только три буквы (не может содержать цифры или специальные символы):
<form action="/action_page.php"> <label for="country_code">Код страны:</label> <input type="text" id="country_code" name="country_code"} pattern="[A-Za-z]{3}" title="Трехбуквенный код страны"><br><br> <input type="submit"> </form>
Пример 2
Ниже приведен элемент <input> с атрибутом type равным "password", который должен содержать не менее 8 символов:
<form action="/action_page.php"> <label for="pwd">Пароль:</label> <input type="password" id="pwd" name="pwd" pattern=".{8,}" title="Восемь или больше символов"> <input type="submit"> </form>
Пример 3
Ниже приведен элемент <input> с атрибутом type равным "password", который должен содержать 8 символов или больше, среди которых должна быть至少 одна цифра, одна большая и одна маленькая буква:
<form action="/action_page.php"> <label for="pwd">Пароль:</label> <input type="password" id="pwd" name="pwd" pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}" title="Необходимо включить至少 восемь символов, среди которых должна быть至少 одна цифра, одна большая и одна маленькая буква"> <input type="submit"> </form>
Пример 4
Ниже приведен элемент <input> с атрибутом type равным "email", который должен соответствовать следующему порядку: characters@characters.domain.
Состоит из символов и знака @, за которым следуют дополнительные символы, а затем символ ".". За символом "." необходимо добавить по крайней мере две буквы из а до з:
<form action="/action_page.php"> <label for="email">Электронная почта:</label> <input type="email" id="email" name="email" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$"> <input type="submit"> </form>
Пример 5
Ниже приведен элемент <input> с атрибутом type равным "search", который не может содержать следующие символы: ' или " .
<form action="/action_page.php"> <label for="search">Search:</label> <input type="search" id="search" name="search" pattern="[^'\x22]+" title="Некорректный ввод"> <input type="submit"> </form>
Пример 6
Ниже приведен элемент <input> с атрибутом type равным "url", который должен начинаться с http:// или https://, за которыми следует по крайней мере один символ:
<form action="/action_page.php"> <label for="website">Домашняя страница:</label> <input type="url" id="website" name="website" pattern="https?://.+" title="Содержит http://"> <input type="submit"> </form>
Синтаксис
<input pattern="regexp">
Значение атрибута
Значение | Описание |
---|---|
regexp | Определяет регулярное выражение для проверки значения элемента <input>. |
Поддержка браузеров
Числа в таблице указывают на версию первого браузера, который полностью поддерживает этот атрибут.
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
5.0 | 10.0 | 4.0 | 10.1 | 9.6 |
Комментарий:pattern
Атрибут - новый атрибут в HTML5.