Вопрос №55555 от пользователя Александр Синицын в уроке «Символьные классы», курс «Регулярные выражения (Regexp)»

Александр Синицын

Этот курс меня просто убивает. Второй урок курса и второй раз я не понимаю где тут можно ошибиться и что делать Ввожу: [0-9/a-z] Выдает:

Expected pattern: not /[0-9/^a-z]/
Received string:      "23/a"
4 1

Станислав Дзисяк

Александр, обратите внимание на квадратные скобки. В данном случае с помощью регулярного выражения проверяется соответствие любого символа в строке выражению - 0-9/^a-z. А это значит что символ может быть числом 0-9, слешем /, кареткой ^ или буквой a-z. Поэтому строка "23/a" соответствует указанному регулярному выражению, а не должна.

0

Александр Синицын

Спасибо, разобрался.

0

Александр Синицын

Знаете я бы сказал, что в теории приводятся примеры где \d выбирает не конкретный один символ а сразу группу символов. В теории не поясняется что он также действует как выбор единичного символа. Советовал бы вам добавить это в теорию.

1

Станислав Дзисяк

Знаете я бы сказал, что в теории приводятся примеры где \d выбирает не конкретный один символ а сразу группу символов.

Александр, почему вы так считаете? С помощью регулярного выражения ищутся все совпадения в строке. собственно в опсиания примера описано, что Давайте найдем в тексте все цифры.... Именно цифры, а не последовательности цифр. Регулярное выражение /\d/, в строке из примера java 11_34-1938 tab найдёт 8 совпадений, каждое из которых будет одной цифрой, а не группой. Использование регулярного выражения \d эквивалентно [0-9]. Попробуйте использовать данный пример например regex101.com и посмотрите сколько совпадений найдено и что они содержат.

0

Используйте Хекслет по максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Даю согласие на обработку персональных данных, соглашаюсь с «Политикой конфиденциальности» и «Условиями оказания услуг»

Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
25 мая 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
25 мая 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
25 мая 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
25 мая 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
25 мая 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
25 мая 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
25 мая 5 месяцев