Strings strcspn
(PHP 4, PHP 5, PHP 7, PHP 8)
strcspn — 마스크와 일치하지 않는 초기 세그먼트의 길이 찾기
설명
strcspn( string $string, string $characters, int $offset = 0, ?int $length = null ): int
characters
의 문자를 포함하지 않는 string
의 초기 세그먼트 길이를 반환합니다.
offset
과 length
가 생략되면 모든 string
이 검사됩니다. 포함된 경우 효과는 strcspn(substr($string, $offset, $length),
$characters)
호출과 동일합니다(자세한 내용은 substr 참조).
매개변수
string
- 검사할 문자열입니다.
characters
- 허용되지 않는 모든 문자를 포함하는 문자열입니다.
offset
string
에서 검색을 시작할 위치입니다.offset
이 지정되고 음수가 아닌 경우 strcspn()은offset
위치에서offset
검사를 시작합니다. 예를 들어, 문자열 'abcdef
'에서 위치0
의 문자는 'a
'이고 위치2
의 문자는 'c
'입니다.offset
이 지정되고 음수이면 strcspn()은string
끝에서offset
' 위치에서 문자열 검사를 시작합니다.length
-
검사할
string
의 세그먼트 길이입니다.length
가 지정되고 음수가 아닌 경우string
은 시작 위치 이후의length
문자를 검사합니다.length
가 지정되고 음수이면string
은 시작 위치부터string
끝의 문자length
까지 검사됩니다.
반환 값
전체가 문자가 아닌 characters
로 구성된 string
의 초기 세그먼트 길이를 반환합니다.
메모: offset
매개변수가 설정되면 반환된 길이는 string
의 시작 부분이 아니라 이 위치부터 계산됩니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 | length 는 이제 nullable입니다. |
Examples
예제 #1 strcspn() 예제
<?php
$a = strcspn('abcd', 'apple');
$b = strcspn('abcd', 'banana');
$c = strcspn('hello', 'l');
$d = strcspn('hello', 'world');
$e = strcspn('abcdhelloabcd', 'abcd', -9);
$f = strcspn('abcdhelloabcd', 'abcd', -9, -5);
var_dump($a);
var_dump($b);
var_dump($c);
var_dump($d);
var_dump($e);
var_dump($f);
?>
위의 예는 다음을 출력합니다.
int(0) int(0) int(2) int(2) int(5) int(4)
메모
참고: 이 함수는 binary-safe입니다.
기타
- strspn() - 주어진 마스크에 포함된 전체 문자로 구성된 문자열의 초기 세그먼트 길이를 찾습니다.