Шаблоны для поиска и соответствия текста
Шаблон определяет правила для соответствия текста с функциями поиска текста, такими как contains
, matches
, и extract
. Вы можете создать выражение шаблона с помощью функций шаблона, операторов и буквенного текста. Для примера, MATLAB® release names, начните с "R"
, далее следует четырехзначный год, а затем "a"
или "b"
. Определите шаблон, соответствующий формату имен релизов:
pat = "R" + digitsPattern(4) + ("a"|"b");
Соответствовать этому шаблону в строке:
str = ["String was introduced in R2016b." "Pattern was added in R2020b."]; extract(str,pat)
ans = 2x1 string array "R2016b" "R2020b"
Шаблоны состоят из буквенного текста и других шаблонов, использующих +
, |
, и ~
операторы. Можно также создать общие шаблоны с помощью Функций объекта, которые используют правила, часто связанные с регулярными выражениями:
Шаблоны соответствия символов - области значений букв или цифр, подстановочные знаки или пробелы, такие как lettersPattern
.
Правила поиска - сколько раз должен происходить шаблон, чувствительность случая, необязательные шаблоны и именованные выражения, такие как optionalPattern
.
Контуры - Контуры в начале или конце запуска определенных символов, таких как alphanumericBoundary
. Краевые шаблоны могут быть сведены на нет с помощью ~
оператор, чтобы соответствовать контуру, препятствует совпадению их выражений шаблона.
Организация шаблона - задайте структуру шаблона и укажите, как отображаются выражения шаблона, такие как maskedPattern
и namedPattern
.
Функция pattern
также создает функции шаблона с синтаксисом, pat = pattern(txt)
, где txt
- буквенный текст, который pat
соответствует. Функции шаблона полезны для определения типа шаблона для валидации аргумента функции. Однако pattern
функция редко требуется для других случаев, потому что функции соответствия тексту MATLAB принимают текстовые входы.