Проверяйте записи HTML-форм с помощью шаблонов Regex - PullRequest
0 голосов
/ 06 октября 2018

В настоящее время я использую шаблон регулярных выражений, который запрещает использование в записях формы.Я хочу расширить это, чтобы разрешить только записи формы в этих полях с определенных URL-адресов?Как я могу добавить запись регулярного выражения домена с подстановочными знаками и поддерживать, используя другой шаблон =

<input name="url" pattern="[^=]+" type="url" placeholder="Amazon URL" required>

ДЕЙСТВУЮЩИЕ ЗАПИСИ

https://www.amazon.co.uk/dp/B01DFKBL68 https://www.amazon.co.uk/dp/B07H3NY1H6/ https://www.amazon.co.uk/b/ref=footer_topup_uk?ie=UTF8&node=13958953031&tag=deals70-21

НЕПРАВИЛЬНЫЕ ЗАПИСИ

https://www.amazon.com/Disc-O-Bed-Large-with-Organizers-Black/dp/B01GSA9O3O https://www.google.com

Вот то, что у меня до сих пор, что не работает:

pattern="[^=|https://www.amazon.co.uk/*]+"

1 Ответ

0 голосов
/ 10 октября 2018

Вы можете использовать

pattern="(?!https://www\.amazon\.co\.uk/)[^=]+"

Регулярное выражение шаблона HTML5 автоматически помещается в ^(?: и )$, поэтому оно будет выглядеть как ^(?:(?!https://www\.amazon\.co\.uk/)[^=]+)$:

  • ^(?: - начало строки и внешней группы контейнеров без захвата
  • (?!https://www\.amazon\.co\.uk/) - строка не может начинаться с https://www.amazon.co.uk/
  • [^=]+ - один или несколько символов, отличных от =
  • )$ - конец группы без захвата и конец строки.
...