Substr_count () es una función integrada en PHP y se utiliza para contar el número de veces que aparece una substring en una string determinada. La función también nos brinda una opción para buscar la substring dada en un rango dado del índice. Es sensible a mayúsculas y minúsculas, es decir, la substring «abc» no está presente en la string «Abcab». Si el valor (inicio+longitud) especificado para la búsqueda excede el tamaño de la string pasada, devuelve un mensaje de advertencia al usuario.
Sintaxis:
substr_count($string, $substring, $start, $length)
Parámetros : esta función acepta cuatro parámetros, como se muestra en la sintaxis anterior y se describe a continuación.
- $string : la string pasada en el parámetro es aquella en la que se cuenta la ocurrencia de la substring. Este parámetro es de obligatorio suministro.
- $substring : la substring pasada en el parámetro que se busca es la string y se devuelve el recuento de ocurrencias. Este parámetro es de obligatorio suministro.
- $start : este parámetro es opcional. Si se pasa este parámetro, la búsqueda se realiza desde la posición de inicio en lugar de buscar en toda la string la aparición de una substring.
- $longitud : este parámetro es opcional. El parámetro depende del inicio. Limita la operación de búsqueda desde el inicio hasta la posición de inicio+longitud. Si el valor de inicio+longitud aumenta la longitud de la string, se genera un mensaje de advertencia
Valor devuelto: esta función puede devolver diferentes valores como se muestra a continuación en diferentes casos.
- El número de veces que la substring dada aparece en la string si no se pasan parámetros opcionales
- El número de veces que la substring aparece en la string desde la posición inicial hasta la final cuando se pasa inicio en el parámetro
- El número de veces que la substring aparece en la string desde el inicio hasta la posición inicio+longitud cuando se pasan los parámetros inicio y longitud.
Ejemplos:
Input: string= "geeks for geeks" substring="geeks" Output: 2 Explanation: "geeks" occurs two times in the given string Input: string= "geeks for geeks" substring="geeks" start=6 Output: 1 Explanation: "geeks" occurs one time in the given string, in this case search for substring starts from 6th position i.e., the substring is searched in "for geeks".
Los siguientes programas ilustran la función substr_count():
Programa 1: Cuando no se pasan ambos parámetros opcionales.
<?php // PHP program to demonstrate the substr_count() function $str = "geeks for geeks"; echo substr_count($str, "geeks"); // displays the count ?>
Producción:
2
Programa 2: cuando se pasa el parámetro $start.
<?php // PHP program to demonstrate the // substr_count() function // $start is passed $str = "geeks for geeks"; echo substr_count($str, "geeks", 6); ?>
Producción:
1
Programa 3: cuando se pasan $inicio y $longitud.
<?php // PHP program to demonstrate the // substr_count() function $str = "geeks for geeks"; echo substr_count($str, "geeks", 6, 2); ?>
Producción:
0
Programa 4: Programa para demostrar el mensaje de advertencia cuando ($inicio+$longitud) excede la longitud de $string.
<?php // PHP program to demonstrate the // substr_count() function $str = "geeks for geeks"; // ($start + $length ) > length of $str echo substr_count($str, "geeks", 6, 14); ?>
Producción:
PHP Warning: substr_count(): Length value 14 exceeds string length
Programa 5: programa para demostrar substr_count() cuando no cuenta la substring superpuesta.
<?php // PHP program to demonstrate the // substr_count() function $str = "abcabcab"; echo substr_count($str, "abcab"); ?>
Producción:
1