Aktueller Standort: Startseite> Neueste Artikel> Wie kombinieren Sie Strrpos- und Substr -Funktionen, um den Inhalt von der letzten Zeichenposition bis zum Ende einer Zeichenfolge abzufangen? Schritte detaillierte Erläuterung

Wie kombinieren Sie Strrpos- und Substr -Funktionen, um den Inhalt von der letzten Zeichenposition bis zum Ende einer Zeichenfolge abzufangen? Schritte detaillierte Erläuterung

gitbox 2025-08-23

Wie kombinieren Sie Strrpos- und Substr -Funktionen, um den Inhalt von der letzten Zeichenposition bis zum Ende einer Zeichenfolge abzufangen? Schritte detaillierte Erläuterung

In PHP ist die String -Manipulation eine der üblichen und wichtigen Aufgaben. Oft müssen wir einen Teil einer Saite abfangen. Strrpos und Substr sind zwei sehr praktische PHP -Funktionen, die in Kombination verwendet werden können, um ab der letzten Zeichenposition der Zeichenfolge ab dem Ende der Zeichenfolge abzufangen.

1. Einführung in die Funktion der Strrpos

Die STRRPOS -Funktion wird verwendet, um das letzte Auftreten eines Zeichens oder Substring in einer Zeichenfolge zu finden. Diese Funktion gibt den Versatz des Zeichens oder Substring zurück (d. H. Der Abstand von der Startposition der Zeichenfolge in die gefundene Zeichenposition), und falls nicht gefunden, gibt sie false zurück.

 <span><span><span class="hljs-title function_ invoke__">strrpos</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$haystack</span></span><span>, </span><span><span class="hljs-keyword">mixed</span></span><span> </span><span><span class="hljs-variable">$needle</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$offset</span></span><span> = </span><span><span class="hljs-number">0</span></span><span>): </span><span><span class="hljs-keyword">int</span></span><span>|</span><span><span class="hljs-literal">false</span></span><span>
</span></span>
  • $ haystack : Die String, nach der man suchen muss.

  • $ nadel : Der Charakter oder Substring zu finden.

  • $ offset : optional, offset, angeben, wo man anfängt, standard ist 0.

2. Einführung in die Substr -Funktion

Die Substr -Funktion wird verwendet, um Substrings aus Zeichenfolgen zu extrahieren. Es fängt den angegebenen Teil durch Angabe der Startposition und Länge ab.

 <span><span><span class="hljs-title function_ invoke__">substr</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$string</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$start</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$length</span></span><span> = ?): </span><span><span class="hljs-keyword">string</span></span><span>|</span><span><span class="hljs-literal">false</span></span><span>
</span></span>
  • $ Zeichenfolge : Die ursprüngliche Zeichenfolge wurde eingegeben.

  • $ start : Die Ausgangsposition des abgefangenen Abfangs, was eine positive oder negative Zahl sein kann. Negative Zahl bedeutet, dass die Berechnung am Ende der Zeichenfolge beginnt.

  • $ Länge : Optional, die abgefangene Länge, falls ausgelassen, wird sie zum Ende der Zeichenfolge abgefangen.

3.. Implementieren Sie den Abschnitt von der letzten Zeichenposition bis zum Ende der Zeichenfolge

Jetzt müssen wir Strrpos- und Substr -Funktionen kombinieren, um den Inhalt der Zeichenfolge abzufangen. Die spezifische Anforderung ist: Beginnen Sie von der letzten Position des angegebenen Zeichens in der Zeichenfolge und Abfangen zum Ende der Zeichenfolge.

4. Detaillierte Schritte

Schritt 1: Verwenden Sie Strrpos , um die Position des letzten Zeichens zu finden

Angenommen, wir haben eine String $ str = "Apple, Banane, Kirsche, Apfel, Orange" und wir wollen abfangen, wo der letzte "Apple" bis zum Ende erscheint. Verwenden Sie zunächst Strrpos , um die Position des letzten "Apple" in der Zeichenfolge zu finden.

 <span><span><span class="hljs-variable">$str</span></span><span> = </span><span><span class="hljs-string">"apple, banana, cherry, apple, orange"</span></span><span>;
</span><span><span class="hljs-variable">$last_pos</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strrpos</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>, </span><span><span class="hljs-string">"apple"</span></span><span>); </span><span><span class="hljs-comment">// Finden Sie den letzten "apple" Standort</span></span><span>
</span></span>

$ last_pos spart nun das letzte Ereignis von "Apple" in der Zeichenfolge, d. H. 24 .

Schritt 2: Verwenden Sie Substr , um den Inhalt von dieser Position bis zum Ende abzufangen

Als nächstes verwenden wir die Substr -Funktion, um von $ last_pos bis zum Ende der Zeichenfolge abzufangen.

 <span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">substr</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>, </span><span><span class="hljs-variable">$last_pos</span></span><span>); </span><span><span class="hljs-comment">// Vom letzten "apple" Standort开始截取</span></span><span>
</span></span>

Zu diesem Zeitpunkt ist der Wert von $ Ergebnis "Apple, Orange" , der der Inhalt des letzten "Apple" der Zeichenfolge bis zum Ende ist.

5. CODE CODE -Beispiel

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// Originalzeichenfolge</span></span><span>
</span><span><span class="hljs-variable">$str</span></span><span> = </span><span><span class="hljs-string">"apple, banana, cherry, apple, orange"</span></span><span>;

</span><span><span class="hljs-comment">// Finden Sie den letzten "apple" Standort</span></span><span>
</span><span><span class="hljs-variable">$last_pos</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strrpos</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>, </span><span><span class="hljs-string">"apple"</span></span><span>);

</span><span><span class="hljs-comment">// Bestimmen Sie, ob der Charakter gefunden wird</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$last_pos</span></span><span> !== </span><span><span class="hljs-literal">false</span></span><span>) {
    </span><span><span class="hljs-comment">// Vom letzten "apple" Fangen Sie an, das Ende der Zeichenfolge abzufangen</span></span><span>
    </span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">substr</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>, </span><span><span class="hljs-variable">$last_pos</span></span><span>);
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Der abgefangene Inhalt ist: "</span></span><span> . </span><span><span class="hljs-variable">$result</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Der angegebene Zeichen wurde nicht gefunden"</span></span><span>;
}
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

6. Betriebsergebnisse

 <span><span><span class="hljs-section">Der abgefangene Inhalt ist: apple, orange</span></span><span>
</span></span>

7. Zusammenfassung

Durch die Kombination von STRRPOS- und Substr -Funktionen können wir den Inhalt einfach von der Zeichenfolge abrufen, beginnend von dem letzten Mal, dass ein bestimmtes Zeichen oder Substring bis zum Ende der Zeichenfolge erscheint. Strrpos hilft uns, den Ort des letzten Zeichens zu finden, und Substr wird verwendet, um den verbleibenden String -Inhalt aus diesem Ort zu extrahieren.