Шаблоны для поиска и сопоставления текста
Шаблон определяет правила для сопоставления текста с функциями поиска текста, такими как contains, matches, и extract. Выражение шаблона можно построить с помощью функций шаблона, операторов и литерального текста. Например, имена версий MATLAB ®, начните с"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, соответствующие тексту, принимают текстовые входные данные.