ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

extractBetween

部分文字列の開始と終了を示すインジケーターの間の部分文字列を抽出

構文

newStr = extractBetween(str,startStr,endStr)
newStr = extractBetween(str,startPos,endPos)
newStr = extractBetween(___,'Boundaries',bounds)

説明

newStr = extractBetween(str,startStr,endStr) は、str から、部分文字列 startStrendStr の間に出現する部分文字列を抽出します。抽出された部分文字列に startStrendStr は含まれません。

str が string 配列の場合、newStr は string 配列です。それ以外の場合、newStr は文字ベクトルの cell 配列です。

str が string 配列または文字ベクトルの cell 配列の場合、extractBetweenstr の各要素から部分文字列を抽出します。

newStr = extractBetween(str,startPos,endPos) は、str から、位置 startPosendPos の間に出現する部分文字列 (それらの位置にある文字を含む) を抽出します。extractBetween は、部分文字列を newStr として返します。

newStr = extractBetween(___,'Boundaries',bounds) は、前述の任意の構文で、開始と終了の位置を含めるか除外するかを指定します。bounds'inclusive' の場合はそれらを含め、bounds'exclusive' の場合は除外します。たとえば、extractBetween(str,startStr,endStr,'Boundaries','inclusive') は、startStrendStr およびそれらの間にあるすべてのテキストを newStr として返します。

すべて折りたたむ

string 配列を作成し、部分文字列の間に出現するテキストを選択します。

R2017a 以降、二重引用符を使用して string を作成できるようになりました。

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

部分文字列 "quick "" fox" の間に出現するテキストを選択します。関数 extractBetween はテキストを選択しますが、出力に "quick "" fox" のいずれも含めません。

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

string 配列の各要素から部分文字列を選択します。開始インジケーターと終了インジケーターとして異なる部分文字列を指定する場合、それらを含む string 配列または cell 配列は、str と同じサイズでなければなりません。

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

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

string 配列を作成し、数値として指定された開始位置と終了位置の間の部分文字列を選択します。

R2017a 以降、二重引用符を使用して string を作成できるようになりました。

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

ミドル ネームを選択します。string 内の 7 番目と 11 番目の位置を指定します。

newStr = extractBetween(str,7,11)
newStr = 
"Allen"

string 配列の各要素から部分文字列を選択します。数値配列を使用して異なる開始位置と終了位置を指定する場合、数値配列は入力 string 配列と同じサイズでなければなりません。

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

newStr = extractBetween(str,[7;8],[11;10])
newStr = 2x1 string array
    "Allen"
    "May"

境界を含めるか除外するかを指定して、string 配列からテキストを選択します。境界を含める場合、extractBetween は選択するテキストに境界を含めます。境界を除外する場合、extractBetween は選択するテキストに境界を含めません。

string 配列を作成します。R2017a 以降、二重引用符を使用して string を作成できるようになりました。

str1 = "small|medium|large"
str1 = 
"small|medium|large"

6 番目と 13 番目の位置の間にあるテキストを選択しますが、それらの位置にある文字は含めません。

newStr = extractBetween(str1,6,13,'Boundaries','exclusive')
newStr = 
"medium"

2 つの部分文字列の間にあるテキストと、部分文字列自体も選択します。

str2 = "The quick brown fox jumps over the lazy dog"
str2 = 
"The quick brown fox jumps over the lazy dog"
newStr = extractBetween(str2," brown","jumps",'Boundaries','inclusive')
newStr = 
" brown fox jumps"

文字ベクトルを作成し、開始位置と終了位置の間にあるテキストを選択します。

chr = 'mushrooms, peppers, and onions'
chr = 
'mushrooms, peppers, and onions'
newChr = extractBetween(chr,12,18)
newChr = 1x1 cell array
    {'peppers'}

部分文字列の間のテキストを選択します。

newChr = extractBetween(chr,'mushrooms, ',', and')
newChr = 1x1 cell array
    {'peppers'}

入力引数

すべて折りたたむ

入力テキスト。string 配列、文字ベクトルまたは文字ベクトルの cell 配列として指定します。

データ型: string | char | cell

抽出する部分文字列の開始を示す文字列。string 配列、文字ベクトルまたは文字ベクトルの cell 配列として指定します。

str が string 配列または文字ベクトルの cell 配列の場合、startStr は、文字ベクトル、string スカラー、str と同じサイズの string 配列または cell 配列のいずれかとして指定できます。

例: extractBetween(str,"AB","YZ") は、str の各要素から ABYZ の間の部分文字列を抽出します。

例: str21 列の string 配列の場合、extractBetween(str,["AB";"FG"],["YZ";"ST"]) は、str(1) 内の ABYZ の間の部分文字列、および str(2) 内の FGST の間の部分文字列を抽出します。

データ型: string | char | cell

抽出する部分文字列の終了を示す文字列。string 配列、文字ベクトルまたは文字ベクトルの cell 配列として指定します。

str が string 配列または文字ベクトルの cell 配列の場合、endStr は、文字ベクトル、string スカラー、str と同じサイズの string 配列または cell 配列のいずれかとして指定できます。

例: extractBetween(str,"AB","YZ") は、str の各要素から ABYZ の間の部分文字列を抽出します。

例: str21 列の string 配列の場合、extractBetween(str,["AB";"FG"],["YZ";"ST"]) は、str(1) 内の ABYZ の間の部分文字列、および str(2) 内の FGST の間の部分文字列を抽出します。

データ型: string | char | cell

抽出する部分文字列の開始位置。数値配列として指定します。

str が複数のテキストを含む配列の場合、startPos は、数値スカラーまたは str と同じサイズの数値配列にすることができます。

例: extractBetween(str,5,9) は、str の各要素内で 5 番目から 9 番目の位置までの部分文字列を抽出します。

例: str21 列の string 配列の場合、extractBetween(str,[5;10],[9;21]) は、str(1) の 5 番目から 9 番目の位置までの部分文字列と、str(2) の 10 番目から 21 番目の位置までの部分文字列を抽出します。

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

抽出する部分文字列の終了位置。数値配列として指定します。

str が複数のテキストを含む配列の場合、endPos は、数値スカラーまたは str と同じサイズの数値配列にすることができます。

例: extractBetween(str,5,9) は、str の各要素内で 5 番目から 9 番目の位置までの部分文字列を抽出します。

例: str21 列の string 配列の場合、extractBetween(str,[5;10],[9;21]) は、str(1) の 5 番目から 9 番目の位置までの部分文字列と、str(2) の 10 番目から 21 番目の位置までの部分文字列を抽出します。

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

出力引数

すべて折りたたむ

出力テキスト。string 配列または文字ベクトルの cell 配列として返されます。

データ型: string | cell

拡張機能

R2016b で導入