Что такое безопасный разделитель регулярных выражений PCRE для использования в атрибуте элемента ввода шаблона HTML5?

Похоже, что спецификация HTML5 (и, следовательно, ECMA262) допускает для соответствия строке '0/0', даже если косая черта не экранирована. Веб-приложения, такие как Drupal, хотели бы обеспечить проверку на стороне сервера для браузеров, не поддерживающих HTML5, с помощью чего-то вроде:


К сожалению, строка '[0-9] / [0-9]' не является допустимым регулярным выражением PRCE. Похоже, что большинство, если не все браузеры с поддержкой HTML5 поддерживают как pattern = "[0-9] / [0-9]" , так и pattern = "[0-9] \ / [0 -9] ", что вызывает вопрос - что мы можем использовать в качестве разделителя для запуска этого шаблона для регулярного выражения в стиле Perl?

Мы отправили отчет об ошибке в соответствии со спецификацией W3C , но здесь браузеры не так? Нужно ли уточнять спецификацию HTML5? Есть ли обходной путь, который мы можем использовать в PHP?

12
задан jotik 25 April 2016 в 09:24
поделиться