"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo encontrar la segunda aparición o posterior de una cadena en PHP usando strposX?

¿Cómo encontrar la segunda aparición o posterior de una cadena en PHP usando strposX?

Publicado el 2024-11-01
Navegar:674

How to Find the Second or Subsequent Occurrence of a String in PHP Using strposX?

Encontrar la segunda aparición de una cadena usando strpos

La función strpos en PHP es una herramienta útil para encontrar la posición de la primera aparición de una subcadena dentro de una cadena más grande. Sin embargo, puede haber casos en los que necesites localizar la segunda aparición o las posteriores.

Un enfoque para encontrar la segunda aparición es utilizar un bucle o recursividad para iterar a través de la cadena y contar el número de veces que se repite la subcadena. aparece. Sin embargo, esto puede resultar ineficiente y consumir mucho tiempo para cadenas grandes.

Una solución más eficiente es utilizar la función strposX, una función personalizada diseñada específicamente para este propósito. Esta función toma tres parámetros: el pajar (la cadena que estás buscando), la aguja (la subcadena que estás buscando) y el número (la ocurrencia que te interesa).

El La función strposX se llama a sí misma de forma recursiva para buscar la aparición especificada. Si el número es 1, se comporta como strpos y devuelve la posición de la primera aparición. Si el número es mayor que 1, agrega la longitud de la aguja a la posición de la aparición anterior y continúa buscando.

Aquí hay una versión simplificada de la función strposX:

function strposX($haystack, $needle, $number = 0) {
  return strpos($haystack, $needle,
    $number > 1 ?
    strposX($haystack, $needle, $number - 1)   strlen($needle) : 0
  );
}

Esta función le permite encontrar fácilmente la segunda, tercera o cualquier aparición posterior de una subcadena, lo que la convierte en una herramienta valiosa para tareas de manipulación de cadenas en PHP.

Declaración de liberación Este artículo se reimprime en: 1729233916 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3