使用strpos 找出字串的第二次出現
strpos() 函數是尋找子字串第一次出現的便捷工具在一個字串內。但是,如果您需要檢索第二次或後續出現的情況,則標準 strpos() 語法就不夠了。這是一個創造性的解決方法:
可以實作自訂函數 strposX() 來完成此任務。它需要 haystack(我們要在其中尋找出現的字串)、needle(要定位的子字串)和您要尋找的出現次數。
strposX() 函數遵循遞歸方法。如果所需的出現次數為 1,則只需呼叫 strpos() 即可尋找第一個出現的位置。對於後續出現的情況(數字大於1),它會遞歸地調用自身來查找前一個出現的情況(第n-1),並將針的長度加到該位置,以將搜尋的起點移至第n次出現。
以下是如何使用 strposX() 函數的範例:
$haystack = "PHP Programming is Fun"; $needle = "Programming"; $nthOccurrence = 2; $occurrence = strposX($haystack, $needle, $nthOccurrence); echo "The $nthOccurrence occurrence of '$needle' is at position $occurrence";
此程式碼將輸出:「‘Programming’ 的第二次出現位於位置 8」。
透過套用此自訂 strposX() 函數,您可以輕鬆擷取字串中任何子字串的第 n 次出現,從而使您的程式碼更加通用和高效。
以上是如何使用 strpos 尋找字串的第二次(或第 n 次)出現?的詳細內容。更多資訊請關注PHP中文網其他相關文章!