Урок №9. Необязательные символы

  Юрий  | 

  Обновл. 12 Ноя 2019  | 

 385

Как мы уже знаем из предыдущего урока, метасимволы * и + используются для указания произвольного количества повторяющихся символов в строке.

Ещё одним метасимволом, который часто встречается при сопоставлении и извлечении текста является ? (знак вопроса), который обозначает необязательность. Этот метасимвол позволяет указать на необязательный символ в выражении, например, шаблон ab?c будет соответствовать либо строкам abc, либо ac, поскольку символ b считается необязательным.

Подобно метасимволу точки, знак вопроса также является специальным символом, и для его экранирования нужно использовать \, чтобы соответствовать простому знаку вопроса в строке.

В упражнении ниже, обратите внимание на то, как изменяется слово file в зависимости от количества найденных файлов. Попробуйте написать шаблон, который использует метасимвол необязательности для соответствия только тем строкам, в которых был найден один или больше файлов.

Задание №9: Необязательные символы
Задание Текст
Соответствовать 1 file found? To be completed
Соответствовать 2 files found? To be completed
Соответствовать 24 files found? To be completed
Пропустить No files found. To be completed

Решение Мы можем использовать метасимвол \d для соответствия количеству файлов и выражение \d+ files? found\? для соответствия строкам, где были найдены файлы.

Обратите внимание, первый знак вопроса применяется к символу s (в слове file), в то время как знак вопроса в конце должен быть экранирован для соответствия знаку вопроса в тексте.

Решите задание выше, чтобы перейти к следующему уроку, либо смотрите Решение.

Оценить статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (3 оценок, среднее: 5,00 из 5)
Загрузка...

Добавить комментарий

Ваш E-mail не будет опубликован. Обязательные поля помечены *