Я просто написал регулярное выражение для использования с функцией php preg_match
, которое содержит следующую часть:
[\w-.]
Для соответствия любому символу слова, а также минусу знак и точка. Хотя вроде работает в preg_match, Я попытался поместить его в утилиту под названием Reggy , и она жалуется на «Пустой диапазон в классе символов» . Метод проб и ошибок научил меня, что эта проблема была решена путем экранирования знака минус и преобразования регулярного выражения в
[\w\-.]
. Поскольку оригинал, похоже, работает в PHP, мне интересно, почему я должен или не должен избегать знака минус и - поскольку точка также является символом, имеющим значение в PHP - почему мне не нужно экранировать точку. Утилита, которую я использую, просто глупая, работает ли она с другим диалектом регулярных выражений или мое регулярное выражение действительно некорректно, и мне просто повезло, что preg_match позволяет мне избежать неприятностей?