count
문자열 내의 패턴 일치 횟수 세기
설명
예제
패턴이 나타나는 횟수 세기
string형 배열에서 문자열 red
가 나타나는 횟수를 셉니다.
큰따옴표를 사용하여 string형을 만들 수 있습니다.
str = "paired with red shoes"
str = "paired with red shoes"
red
가 나타나는 횟수를 세려면 count
함수를 사용합니다. 이 예제에서 red
는 단어 paired
의 일부이기도 하므로 결과는 2입니다.
A = count(str,"red")
A = 2
2×1 string형 배열을 만듭니다.
str = ["red green red red blue blue green"; "green red blue green green blue"]
str = 2x1 string
"red green red red blue blue green"
"green red blue green green blue"
str
의 각 요소에서 red
가 나타나는 횟수를 셉니다. str
이 string형 배열 또는 문자형 벡터로 구성된 셀형 배열이면 A
는 크기가 같은 숫자형 배열입니다.
A = count(str,"red")
A = 2×1
3
1
패턴을 사용하여 숫자와 문자 세기
R2020b 이상
주소가 포함된 string형 배열을 만듭니다.
str = ["221B Baker St.","Tour Eiffel Champ de Mars","4059 Mt Lee Dr."]
str = 1x3 string
"221B Baker St." "Tour Eiffel Champ de Mars" "4059 Mt Lee Dr."
각 주소에서 숫자를 세려면 먼저 하나의 숫자로 된 패턴을 만듭니다. 문자열에서 이 패턴이 나타나는 횟수가 문자열 속 숫자의 개수입니다.
입력 인수 1
로 digitsPattern
함수를 호출하여 패턴을 만듭니다. 이렇게 하면 함수는 임의의 숫자 시퀀스(예: 221
또는 4059
)가 아니라 하나의 숫자로 된 패턴(예: 2
)과 일치하는 경우를 찾습니다.
pat = digitsPattern(1)
pat = pattern
Matching:
digitsPattern(1)
그런 다음 str
과 pat
를 입력값으로 사용하여 count
함수를 호출합니다.
A = count(str,pat)
A = 1×3
3 0 4
마찬가지로, lettersPattern(1)
로 만들어진 패턴을 사용하여 (숫자, 공백, 문장 부호를 제외한) 문자의 개수를 셀 수 있습니다.
A = count(str,lettersPattern(1))
A = 1×3
8 21 7
하나 이상의 숫자와 하나의 문자로 이루어진 시퀀스의 개수를 셉니다. 단순한 패턴을 결합하여 더 복잡한 패턴을 만들 수 있습니다. 이 경우 digitsPattern + lettersPattern(1)
은 221B
를 일치하는 패턴으로 찾습니다.
pat = digitsPattern + lettersPattern(1); A = count(str,pat)
A = 1×3
1 0 0
pattern 객체를 만드는 함수 목록은 pattern
항목을 참조하십시오.
여러 개의 부분문자열이 나타나는 횟수 세기
string형 배열에서 red
및 blue
가 나타나는 총 횟수를 셉니다.
큰따옴표를 사용하여 string형을 생성할 수 있습니다.
str = ["red green blue"; "green red blue green blue"]
str = 2x1 string
"red green blue"
"green red blue green blue"
첫 번째 문자열의 경우 red
와 blue
가 각각 한 번씩 나타나므로 count
는 2를 반환합니다. 두 번째 문자열의 경우에는 red
가 한 번, blue
가 두 번 나타나므로 count
는 3을 반환합니다.
A = count(str,["red","blue"])
A = 2×1
2
3
대/소문자 무시하기
이름을 포함하는 string형 배열에서 대/소문자를 무시하고 문자 E
가 나타나는 횟수를 셉니다.
큰따옴표를 사용하여 string형을 생성할 수 있습니다.
str = ["Edgar Allan Poe";"Louisa May Alcott"]
str = 2x1 string
"Edgar Allan Poe"
"Louisa May Alcott"
A = count(str,'E','IgnoreCase',true)
A = 2×1
2
0
문자형 벡터에서 부분문자열 세기
단어 alphabetical
에서 al
이 나타나는 횟수를 셉니다.
chr = 'alphabetical'
chr = 'alphabetical'
A = count(chr,'al')
A = 2
입력 인수
확장 기능
tall형 배열
메모리에 담을 수 없을 정도로 많은 행을 가진 배열을 계산할 수 있습니다.
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
str
과pattern
은 string형 스칼라, 문자형 벡터 또는 최대 1개의 문자형 벡터를 포함하는 셀형 배열이어야 합니다.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
분산 배열
Parallel Computing Toolbox™를 사용하여 대규모 배열을 클러스터의 결합된 메모리에 걸쳐 분할할 수 있습니다.
사용법 관련 참고 및 제한 사항:
pat
는 string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열이어야 합니다.
자세한 내용은 분산 배열을 사용하여 MATLAB 함수 실행 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2016b에 개발됨
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)