extractBetween
시작 지점과 끝 지점 사이에 있는 부분문자열 추출
구문
설명
예제
부분문자열 사이에 있는 텍스트 선택하기
string형 배열을 만든 다음, 부분문자열 사이에 있는 텍스트를 선택합니다.
str = "The quick brown fox"
str = "The quick brown fox"
부분문자열 "quick "
과 " fox"
사이에 있는 텍스트를 선택합니다. extractBetween
함수는 텍스트를 선택하지만 "quick "
이나 " fox"
는 출력값에 포함시키지 않습니다.
newStr = extractBetween(str,"quick "," fox")
newStr = "brown"
string형 배열의 각 요소에서 부분문자열을 선택합니다. 각각 다른 부분문자열을 시작 및 끝 표시자로 지정할 경우, 이러한 부분문자열은 str
과 같은 크기의 string형 배열이나 셀형 배열에 포함시켜야 합니다.
str = ["The quick brown fox jumps";"over the lazy dog"]
str = 2x1 string
"The quick brown fox jumps"
"over the lazy dog"
newStr = extractBetween(str,["quick ";"the "],[" fox";" dog"])
newStr = 2x1 string
"brown"
"lazy"
패턴을 사용하여 태그 사이의 텍스트 추출하기
R2020b 이상
태그로 묶인 텍스트로 구성된 string형 배열을 만듭니다.
str = ["<courseName>Calculus I</courseName>"; "<semester>Fall 2020</semester>"; "<schedule>MWF 8:00-8:50</schedule>"]
str = 3x1 string
"<courseName>Calculus I</courseName>"
"<semester>Fall 2020</semester>"
"<schedule>MWF 8:00-8:50</schedule>"
태그로 묶인 텍스트를 추출합니다. 먼저 wildcardPattern
함수를 사용하여 임의의 시작 태그 및 종료 태그와 일치하는 패턴을 만듭니다.
startPat = "<" + wildcardPattern + ">"
startPat = pattern
Matching:
"<" + wildcardPattern + ">"
endPat = "</" + wildcardPattern + ">"
endPat = pattern
Matching:
"</" + wildcardPattern + ">"
그런 다음, extractBetween
함수를 호출합니다.
newStr = extractBetween(str,startPat,endPat)
newStr = 3x1 string
"Calculus I"
"Fall 2020"
"MWF 8:00-8:50"
pattern 객체를 만드는 함수 목록은 pattern
항목을 참조하십시오.
시작 위치와 끝 위치 사이에 있는 부분문자열 선택하기
string형 배열을 만든 다음, 숫자로 지정된 시작 위치와 끝 위치 사이에 있는 부분문자열을 선택합니다.
str = "Edgar Allen Poe"
str = "Edgar Allen Poe"
중간 이름을 선택합니다. 문자열에서 7번째 위치와 11번째 위치를 지정합니다.
newStr = extractBetween(str,7,11)
newStr = "Allen"
string형 배열의 각 요소에서 부분문자열을 선택합니다. 숫자형 배열을 사용하여 각각 다른 시작 위치와 끝 위치를 지정할 경우, 숫자형 배열의 크기는 입력 string형 배열과 동일해야 합니다.
str = ["Edgar Allen Poe";"Louisa May Alcott"]
str = 2x1 string
"Edgar Allen Poe"
"Louisa May Alcott"
newStr = extractBetween(str,[7;8],[11;10])
newStr = 2x1 string
"Allen"
"May"
경계를 포함하거나 제외하여 텍스트 선택하기
경계를 강제로 포함하거나 제외하도록 지정하여 string형 배열에서 텍스트를 선택합니다. 경계를 포함하도록 지정할 경우 extractBetween
은 선택된 텍스트에 경계를 포함시킵니다. 경계를 제외하도록 지정할 경우 extractBetween
은 선택된 텍스트에 경계를 포함시키지 않습니다.
str1 = "small|medium|large"
str1 = "small|medium|large"
6번째 위치와 13번째 위치 사이에 있는 텍스트를 선택하되, 해당 위치의 문자는 포함시키지 않습니다.
newStr = extractBetween(str1,6,13,'Boundaries','exclusive')
newStr = "medium"
두 부분문자열 사이에 있는 텍스트를 선택하고, 부분문자열 자체도 선택합니다.
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'}
입력 인수
str
— 입력 텍스트
string형 배열 | 문자형 벡터 | 문자형 벡터로 구성된 셀형 배열
입력 텍스트로, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정됩니다.
startPat
— 시작 위치를 표시하는 텍스트 또는 패턴
string형 배열 | 문자형 벡터 | 문자형 벡터로 구성된 셀형 배열 | pattern
배열(R2020b 이상)
추출할 텍스트의 시작 위치를 표시하는 텍스트 또는 패턴으로, 다음 중 하나로 지정됩니다.
string형 배열
문자형 벡터
문자형 벡터로 구성된 셀형 배열
pattern
배열(R2020b 이상)
str
이 string형 배열이거나 문자형 벡터로 구성된 셀형 배열이면 str
의 모든 요소에서 부분문자열을 추출할 수 있습니다. 부분문자열이 모두 같은 시작 위치를 가진다고 지정하거나 str
의 각 요소에서 서로 다른 시작 위치를 가진다고 지정할 수 있습니다.
같은 시작 위치를 지정하려면
startPat
를 문자형 벡터, string형 스칼라 또는pattern
객체로 지정하십시오.서로 다른 시작 위치를 지정하려면
startPat
를 string형 배열, 문자형 벡터로 구성된 셀형 배열 또는pattern
배열로 지정하십시오.
예: extractBetween(str,"AB","YZ")
는 str
의 각 요소에서 AB
와 YZ
사이에 있는 부분문자열을 추출합니다.
예: str
이 2
×1
string형 배열인 경우 extractBetween(str,["AB";"FG"],["YZ";"ST"])
는 str(1)
에서 AB
와 YZ
사이에 있는 부분문자열을 추출하고 str(2)
에서 FG
와 ST
사이에 있는 부분문자열을 추출합니다.
endPat
— 끝 위치를 표시하는 텍스트 또는 패턴
string형 배열 | 문자형 벡터 | 문자형 벡터로 구성된 셀형 배열 | pattern
배열(R2020b 이상)
추출할 텍스트의 끝 위치를 표시하는 텍스트 또는 패턴으로, 다음 중 하나로 지정됩니다.
string형 배열
문자형 벡터
문자형 벡터로 구성된 셀형 배열
pattern
배열(R2020b 이상)
str
이 string형 배열이거나 문자형 벡터로 구성된 셀형 배열이면 str
의 모든 요소에서 부분문자열을 추출할 수 있습니다. 부분문자열이 모두 같은 끝 위치를 가진다고 지정하거나 str
의 각 요소에서 서로 다른 끝 위치를 가진다고 지정할 수 있습니다.
같은 끝 위치를 지정하려면
endPat
를 문자형 벡터, string형 스칼라 또는pattern
객체로 지정하십시오.서로 다른 끝 위치를 지정하려면
endPat
를 string형 배열, 문자형 벡터로 구성된 셀형 배열 또는pattern
배열로 지정하십시오.
예: extractBetween(str,"AB","YZ")
는 str
의 각 요소에서 AB
와 YZ
사이에 있는 부분문자열을 추출합니다.
예: str
이 2
×1
string형 배열인 경우 extractBetween(str,["AB";"FG"],["YZ";"ST"])
는 str(1)
에서 AB
와 YZ
사이에 있는 부분문자열을 추출하고 str(2)
에서 FG
와 ST
사이에 있는 부분문자열을 추출합니다.
startPos
— 시작 위치
숫자형 배열
시작 위치로, 숫자형 배열로 지정됩니다.
str
이 여러 개의 텍스트 조각을 포함하는 배열인 경우 startPos
는 숫자형 스칼라이거나 str
과 같은 크기의 숫자형 배열일 수 있습니다.
예: extractBetween(str,5,9)
는 str
의 각 요소에서 5번째 위치부터 9번째 위치까지의 부분문자열을 추출합니다.
예: str
이 2
×1
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
endPos
— 끝 위치
숫자형 배열
끝 위치로, 숫자형 배열로 지정됩니다.
str
이 여러 개의 텍스트 조각을 포함하는 배열인 경우 endPos
는 숫자형 스칼라이거나 str
과 같은 크기의 숫자형 배열일 수 있습니다.
예: extractBetween(str,5,9)
는 str
의 각 요소에서 5번째 위치부터 9번째 위치까지의 부분문자열을 추출합니다.
예: str
이 2
×1
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
bounds
— 경계 동작
'inclusive'
| 'exclusive'
경계 동작으로, 'inclusive'
또는 'exclusive'
로 지정됩니다. 경계 동작이 inclusive인 경우 추출되는 텍스트에 위에 열거된 인수로 지정된 시작과 끝이 포함됩니다. 경계 동작이 exclusive인 경우 시작과 끝이 포함되지 않습니다.
출력 인수
newStr
— 출력 텍스트
string형 배열 | 문자형 벡터로 구성된 셀형 배열
출력 텍스트로, string형 배열 또는 문자형 벡터로 구성된 셀형 배열로 반환됩니다.
확장 기능
tall형 배열
메모리에 담을 수 없을 정도로 많은 행을 가진 배열을 계산할 수 있습니다.
사용법 관련 참고 및 제한 사항:
tall형 배열에서는 첫 번째 차원의 확장이 지원되지 않습니다.
pattern 객체는 지원되지 않습니다.
자세한 내용은 tall형 배열 항목을 참조하십시오.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
분산 배열
Parallel Computing Toolbox™를 사용하여 대규모 배열을 클러스터의 결합된 메모리에 걸쳐 분할할 수 있습니다.
사용법 관련 참고 및 제한 사항:
startPat
와endPat
는 string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열이어야 합니다.
자세한 내용은 분산 배열을 사용하여 MATLAB 함수 실행 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2016b에 개발됨
참고 항목
split
| join
| erase
| eraseBetween
| extract
| extractBefore
| extractAfter
| insertAfter
| insertBefore
| replace
| replaceBetween
| strlength
| count
| pattern
| wildcardPattern
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)