exponenta event banner

extractAfter

Извлечение подстрок после указанных положений

Описание

пример

newStr = extractAfter(str,pat) извлекает подстроку, которая начинается после подстроки, указанной pat и заканчивается последним символом str. Если pat происходит несколько раз в str, то newStr является str от первого возникновения pat до конца.

Если str является строковым массивом или массивом ячеек символьных векторов, то extractAfter извлекает подстроки из каждого элемента str. Выходной аргумент newStr имеет тот же тип данных, что и str.

пример

newStr = extractAfter(str,pos) извлекает подстроку, которая начинается после позиции, указанной pos и заканчивается последним символом str.

Примеры

свернуть все

Создайте массивы строк и выделите текст, который появляется после подстрок.

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

str = "The quick brown fox"
str = 
"The quick brown fox"

При использовании R2016b создайте массивы строк с помощью string функция вместо двойных кавычек.

Извлечение подстроки, которая возникает после подстроки "quick ". extractAfter функция выбирает новый текст, но не включает "quick " в выходных данных.

newStr = extractAfter(str,"quick ")
newStr = 
"brown fox"

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

str = ["The quick brown fox jumps";"over the lazy dog"]
str = 2x1 string
    "The quick brown fox jumps"
    "over the lazy dog"

newStr = extractAfter(str,["quick ";"the "])
newStr = 2x1 string
    "brown fox jumps"
    "lazy dog"

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

С R2020b г.

Создайте строковый массив имен файлов, включая полные пути.

str = ["C:\Temp\MyReport.docx";
       "C:\Data\Experiment1\Trial1\Sample1.csv";
       "C:\Temp\Slides.pptx"]
str = 3x1 string
    "C:\Temp\MyReport.docx"
    "C:\Data\Experiment1\Trial1\Sample1.csv"
    "C:\Temp\Slides.pptx"

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

Полный путь может иметь несколько уровней, каждый из которых состоит из любого текста, за которым следует "\" персонаж. Начните с создания шаблона, соответствующего одному уровню.

level = wildcardPattern + "\"
level = pattern
  Matching:

    wildcardPattern + "\"

Затем создайте образец, соответствующий полному пути и содержащий любое количество уровней.

pat = asManyOfPattern(level)
pat = pattern
  Matching:

    asManyOfPattern(wildcardPattern + "\")

Наконец, позвоните extractAfter.

filenames = extractAfter(str,pat)
filenames = 3x1 string
    "MyReport.docx"
    "Sample1.csv"
    "Slides.pptx"

Список функций, создающих объекты массива, см. в разделе pattern.

Создание строк после указанных позиций.

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

str = "Edgar Allen Poe"
str = 
"Edgar Allen Poe"

Выберите подстроку после 12-го символа.

newStr = extractAfter(str,12)
newStr = 
"Poe"

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

str = ["Edgar Allen Poe";"Louisa May Alcott"]
str = 2x1 string
    "Edgar Allen Poe"
    "Louisa May Alcott"

newStr = extractAfter(str,[12;11])
newStr = 2x1 string
    "Poe"
    "Alcott"

Выберите подстроки из каждого элемента и укажите одно и то же положение.

newStr = extractAfter(str,6)
newStr = 2x1 string
    "Allen Poe"
    " May Alcott"

Создайте вектор символов. Затем создайте новые векторы символов, которые являются подстроками chr.

chr = 'peppers and onions'
chr = 
'peppers and onions'

Выделите текст после 12-й позиции.

newChr = extractAfter(chr,12)
newChr = 
'onions'

Выделение текста после подстроки.

newChr = extractAfter(chr,'and ')
newChr = 
'onions'

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

свернуть все

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

Текст или образец в str которая обозначает начальную позицию для извлеченного текста, указанного как одно из следующих значений:

  • Строковый массив

  • Символьный вектор

  • Массив ячеек символьных векторов

  • pattern массив (с R2020b года)

extractAfter функция исключает pat из выделенной подстроки.

Если str является строковым массивом или массивом ячеек символьных векторов, то можно извлечь подстроки из каждого элемента str. Можно указать, что все подстроки имеют одно и то же начало или разные начала в каждом элементе str.

  • Для указания того же самого начала укажите pat в виде символьного вектора, строкового скаляра или pattern объект.

  • Для указания различных стартов укажите pat в виде строкового массива, массива ячеек символьных векторов или pattern массив.

Начальная позиция, заданная как числовой массив. extractAfter исключает символ в pos из извлеченной подстроки.

Если str является строковым массивом или массивом ячеек символьных векторов, то pos может быть числовым скалярным или числовым массивом того же размера, что и str.

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

свернуть все

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

Расширенные возможности

.
Представлен в R2016b