Heim  >  Artikel  >  Backend-Entwicklung  >  Wie finde ich mit strposX das zweite oder nachfolgende Vorkommen einer Zeichenfolge in PHP?

Wie finde ich mit strposX das zweite oder nachfolgende Vorkommen einer Zeichenfolge in PHP?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-18 14:47:03946Durchsuche

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

Das zweite Vorkommen einer Zeichenfolge mit strpos finden

Die strpos-Funktion in PHP ist ein nützliches Werkzeug zum Ermitteln der Position des ersten Vorkommens eines Teilstrings innerhalb eines größeren Strings. Es kann jedoch vorkommen, dass Sie das zweite oder weitere Vorkommen suchen müssen.

Ein Ansatz zum Auffinden des zweiten Vorkommens besteht darin, eine Schleife oder Rekursion zu verwenden, um die Zeichenfolge zu durchlaufen und zu zählen, wie oft die Teilzeichenfolge vorkommt erscheint. Dies kann jedoch bei großen Strings ineffizient und zeitaufwändig sein.

Eine effizientere Lösung ist die Verwendung der strposX-Funktion, einer benutzerdefinierten Funktion, die speziell für diesen Zweck entwickelt wurde. Diese Funktion benötigt drei Parameter: den Heuhaufen (die Zeichenfolge, in der Sie suchen), die Nadel (die Teilzeichenfolge, nach der Sie suchen) und die Zahl (das Vorkommen, an dem Sie interessiert sind).

Die Die Funktion strposX ruft sich selbst rekursiv auf, um nach dem angegebenen Vorkommen zu suchen. Wenn die Zahl 1 ist, verhält es sich wie strpos und gibt die Position des ersten Vorkommens zurück. Wenn die Zahl größer als 1 ist, wird die Länge der Nadel zur Position des vorherigen Vorkommens hinzugefügt und die Suche fortgesetzt.

Hier ist eine vereinfachte Version der strposX-Funktion:

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

Mit dieser Funktion können Sie leicht das zweite, dritte oder jedes nachfolgende Vorkommen eines Teilstrings finden, was sie zu einem wertvollen Werkzeug für String-Manipulationsaufgaben in PHP macht.

Das obige ist der detaillierte Inhalt vonWie finde ich mit strposX das zweite oder nachfolgende Vorkommen einer Zeichenfolge in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn