wildcardPattern

Совпадает с несколькими символами любого типа

Описание

пример

pat = wildcardPattern создает шаблон, который соответствует минимальному количеству символов, включая нулевые символы. wildcardPattern является ленивым, что означает, что если он используется самостоятельно без каких-либо входов, то он соответствует пустым строкам ("") до или после символов в строках.

пример

pat = wildcardPattern(N) создает шаблон, который точно совпадает N персонажи.

пример

pat = wildcardPattern(minCharacters,maxCharacters) соответствует, по крайней мере minCharacters и не более maxCharacters. inf является допустимым значением для maxCharacters. wildcardPattern соответствует количеству символов как близкое к minCharacters по возможности.

пример

pat = wildcardPattern(___,"Except",exceptPat) задает исключения, которые нужно исключить из соответствия. wildcardPattern соответствует любому символу, кроме заданных шаблоном exceptPat.

Примеры

свернуть все

Функция wildcardPattern является ленивым, что означает, что он соответствует столько символов любого рода, сколько нужно, даже нуль.

Извлечение wildcardPattern из строки. Между любыми двумя последовательными символами в строке есть пустые строки, а также перед первым символом и после последнего. Вот почему extract совпадает и извлекает пять пустых строк из этой строки.

txt = "lazy";
emptyStr = extract(txt,wildcardPattern)
emptyStr = 5x1 string
    ""
    ""
    ""
    ""
    ""

strlength(emptyStr)
ans = 5×1

     0
     0
     0
     0
     0

Если wildcardPattern ограничен другими шаблонами, он соответствует минимальному количеству символов для соответствия выражения шаблона.

txt = "aa aba abaa a a123a a!?.a";
pat = "a" + wildcardPattern + "a";
extract(txt,pat)
ans = 6x1 string
    "aa"
    "aba"
    "aba"
    "a a"
    "a123a"
    "a!?.a"

Использование wildcardPattern для соответствия отдельным символам всех типов.

Прочитайте текст из Сонетов Шекспира с fileread функцию и преобразовать ее в string.

sonnets = string(fileread('sonnets.txt'));
strip(extractBetween(sonnets,"Shakespeare","But"))
ans = 
    "I
     
       From fairest creatures we desire increase,
       That thereby beauty's rose might never die,"

Создайте шаблон, pat, который совпадает с одним символом любого типа. Извлеките шаблон. Преобразуйте string массивы направленности characters на categorical так что это действительный вход для histogram. Отображать вхождения каждого символа используя histogram.

pat = wildcardPattern(1);
characters = extract(sonnets,pat);
characters = lower(characters);
characters = categorical(characters);
histogram(characters)

Figure contains an axes. The axes contains an object of type categoricalhistogram.

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

txt = "1a 23b 456c 7890d";
pat = " " + wildcardPattern(2,3) + lettersPattern;
extract(txt,pat)
ans = 2x1 string
    " 23b"
    " 456c"

Разделите разделенный списками , разделенными запятыми при помощи wildcardPattern.

Создание txt как строка. Создайте шаблон, используя wildcardPattern который соответствует как можно большему количеству символов любого типа, кроме "," далее указываются пробелы символов. Извлеките шаблон.

txt = "1 fish, 2 Fish, [1,0,0] fish, [0,0,1] fish";
exceptPat = "," + whitespacePattern;
pat = asManyOfPattern(wildcardPattern(1,inf,"Except",exceptPat),1);
extract(txt,pat)
ans = 4x1 string
    "1 fish"
    " 2 Fish"
    " [1,0,0] fish"
    " [0,0,1] fish"

Входные параметры

свернуть все

Количество совпадающих символов, заданное как неотрицательный целочисленный скаляр.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Минимальное количество символов для соответствия, заданное как неотрицательный целочисленный скаляр.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Максимальное количество символов для соответствия, заданное как неотрицательный целочисленный скаляр.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Исключение для соответствия подстановочных знаков, заданное как объект шаблона, вектор символов или строковый скаляр. wildcardPattern будет соответствовать любому символу, кроме совпадений с этим заданным исключением.

Пример: pat = wildcardPattern("except",digitsPattern) создает шаблон, исключающий символы цифр.

Типы данных: pattern | char | string

Выходные аргументы

свернуть все

Шаблон выражения, возвращенный как pattern объект.

Введенный в R2020b
Для просмотра документации необходимо авторизоваться на сайте