strcmp
문자열 비교
설명
예제
두 개의 문자형 벡터 비교하기
서로 다른 문자형 벡터 두 개를 비교합니다.
s1 = 'Yes'; s2 = 'No'; tf = strcmp(s1,s2)
tf = logical
0
s1
과 s2
가 같지 않으므로 strcmp
는 0
을 반환합니다.
두 개의 동일한 문자형 벡터를 비교합니다.
s1 = 'Yes'; s2 = 'Yes'; tf = strcmp(s1,s2)
tf = logical
1
s1
과 s2
가 같으므로 strcmp
는 1
을 반환합니다.
셀형 배열에서 텍스트 찾기
문자형 벡터로 구성된 셀형 배열에서 단어 'upon'
을 찾습니다.
s1 = 'upon'; s2 = {'Once','upon'; 'a','time'}; tf = strcmp(s1,s2)
tf = 2x2 logical array
0 1
0 0
s1
은 배열 s2
의 요소 s2(1,2)
에서 한 번만 나옵니다.
문자형 벡터로 구성된 두 셀형 배열 비교하기
문자형 벡터로 구성된 두 셀형 배열의 각 요소를 비교합니다.
s1 = {'Time','flies','when'; 'you''re','having','fun.'}; s2 = {'Time','drags','when'; 'you''re','anxiously','waiting.'}; tf = strcmp(s1,s2)
tf = 2x3 logical array
1 0 1
1 0 0
s1
과 s2
에는 동일한 요소가 3개 있습니다. 이러한 요소는 인덱스 (1,1)
의 'Time'
, 인덱스 (1,3)
의 'when'
, 인덱스 (2,1)
의 'you''re'
입니다.
string형 배열 비교하기
strcmp
를 사용하여 string형 배열을 비교합니다.
s1 = ["A","bc"; "def","G"]; s2 = ["B","c"; "def","G"]; tf = strcmp(s1,s2)
tf = 2x2 logical array
0 0
1 1
숫자형 배열처럼 관계 연산자를 사용하여 string형 배열을 비교하고 정렬할 수 있습니다.
==
연산자를 사용하여 두 string형 배열의 어떤 요소가 같은지 파악할 수 있습니다.
s1 == s2
ans = 2x2 logical array
0 0
1 1
<
연산자를 사용하여 ASCII 사전순 측면에서 s1
의 어떤 요소가 s2
의 대응 요소보다 작은지 파악할 수 있습니다.
s1 < s2
ans = 2x2 logical array
1 1
0 0
입력 인수
s1,s2
— 입력 텍스트
문자형 벡터 | 문자형 배열 | 문자형 벡터로 구성된 셀형 배열 | string형 배열
입력 텍스트로, 각 입력값이 문자형 벡터, 문자형 배열, 문자형 벡터로 구성된 셀형 배열, string형 배열 중 하나로 지정됩니다. 입력값의 순서는 비교 결과에 영향을 미치지 않습니다.
s1
과s2
가 모두 string형 배열이거나 문자형 벡터로 구성된 셀형 배열인 경우 둘 중 하나가 스칼라가 아니라면s1
과s2
는 크기가 같아야 합니다.s1
과s2
가 모두 행이 여러 개인 문자형 배열인 경우s1
과s2
는 행 개수가 다를 수 있습니다.문자형 벡터로 구성된 비 스칼라 셀형 배열 또는 string형 배열을 행이 여러 개인 문자형 배열과 비교하는 경우 셀형 배열 또는 string형 배열은 문자형 배열과 행 개수가 같은 열 벡터여야 합니다.
데이터형: char
| cell
| string
출력 인수
tf
— true 또는 false 결과
1
| 0
| 논리형 배열
true 또는 false 결과로, logical
데이터형의 1
이나 0
으로 반환됩니다.
각 입력값이 string형 스칼라, 스칼라 셀 또는 문자형 벡터인 경우
tf
는 스칼라가 됩니다.최소 하나 이상의 입력값이 string형 배열이거나 문자형 벡터로 구성된 셀형 배열인 경우
tf
는 입력 배열과 크기가 같은 배열이 됩니다.한 입력값이 행이 여러 개인 문자형 배열이고 다른 입력값이 스칼라 셀형이거나 string형 스칼라인 경우
tf
는n
×1
배열이 됩니다. 여기서n
은 문자형 배열의 행 개수입니다.두 입력값이 모두 문자형 배열인 경우
tf
는 스칼라입니다.
팁
strcmp
함수는 텍스트의 비교에 사용하도록 고안되었습니다. 지원되지 않는 데이터형에 사용되는 경우strcmp
는 항상0
을 반환합니다.대/소문자 구분 없이 텍스트를 비교하려면
strcmp
대신strcmpi
를 사용하십시오.strcmp
는 C 함수와 이름이 같지만, 텍스트 입력값이 일치할 때0
을 반환하는 C 언어 규칙을 따르지 않습니다.string형 배열의 경우
strcmp
대신에 관계 연산자(==
,~=
,<
,>
,<=
,>=
)를 사용할 수 있습니다. 숫자형 배열처럼 string형 배열을 비교하고 정렬할 수 있습니다.
확장 기능
tall형 배열
메모리에 담을 수 없을 정도로 많은 행을 가진 배열을 계산할 수 있습니다.
이 함수는 tall형 배열을 완전히 지원합니다. 자세한 내용은 tall형 배열 항목을 참조하십시오.
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
열거형 입력값은 지원되지 않습니다.
한 입력값이 셀형 배열이고 다른 한 입력값이 문자형 배열인 경우 이 문자형 배열은 컴파일타임 행 벡터여야 합니다.
두 입력값이 크기가 서로 다른 빈 문자형 배열인 경우 생성된 코드는
true
를 반환합니다.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
분산 배열
Parallel Computing Toolbox™를 사용하여 대규모 배열을 클러스터의 결합된 메모리에 걸쳐 분할할 수 있습니다.
사용법 관련 참고 및 제한 사항:
입력값은 string형 배열이거나 문자형 벡터로 구성된 셀형 배열이어야 합니다.
자세한 내용은 분산 배열을 사용하여 MATLAB 함수 실행 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨
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)