📅  最后修改于: 2023-12-03 15:18:25.864000             🧑  作者: Mango
strcspn()
函数用于计算字符串开头连续的字符中,不包含给定字符集合中的字符的最长长度。
strcspn ( string $str1 , string $str2 [, int $start [, int $length ]] ) : int
str1
:必需;要计算长度的字符串。str2
:必需;字符集合,在str1
中查找不包含该集合的字符。start
:可选;从str1
的哪个位置开始查找,默认为0。length
:可选;查找str1
的长度,默认为strlen(str1)
。str1
中开头连续的字符中,不包含str2
中任何字符的最长长度。
$str1 = "abcd12345";
$str2 = "123";
echo strcspn($str1, $str2); // Output: 4
在上面的示例中,strcspn()
函数首先从str1
的开头开始查找不包含str2
中任何字符的长度。 因为str1
开头的连续字符是"abcd"
,而"123"
包含在str2
中,所以函数返回4。
$str1 = "aaccbbdd";
$str2 = "abcd";
echo strcspn($str1, $str2); // Output: 0
在上面的示例中,str1
的开头连续的字符是"aa"
,而"abcd"
包含在str2
中,因此函数返回0。
$str1 = "The quick brown fox jumps over the lazy dog";
$str2 = "abcdefg";
echo strcspn($str1, $str2); // Output: 1
在上面的示例中,str1
的开头连续的字符是"T"
,而"abcdefg"
都不包含在str1
中,因此函数返回1。
start
的值大于或等于str1
的长度,将返回0。length
的长度是负数,则length
将被视为0。str2
中包含了一些特殊字符,需要用反斜杠进行转义。