將程式碼從PHP 轉換到Java 時,一個常見的挑戰是找到PHP 的preg_replace_callback() 函數的等效函數。此函數允許對正規表示式中的每個匹配項使用回調函數,並將匹配文字作為參數傳遞。
考慮以下PHP 程式碼:
$articleText = preg_replace_callback("/\[thumb(\d+)\]/",'thumbReplace', $articleText); function thumbReplace($matches) { global $photos; return "<img src=\"thumbs/" . $photos[$matches[1]] . "\">"; }
在Java 中,可以在循環中使用appendReplacement() 和appendTail() 方法來實現類似的方法:
StringBuffer resultString = new StringBuffer(); Pattern regex = Pattern.compile("regex"); Matcher regexMatcher = regex.matcher(subjectString); while (regexMatcher.find()) { // Vary replacement text dynamically for each match regexMatcher.appendReplacement(resultString, "replacement"); } regexMatcher.appendTail(resultString);
此程式碼提供了靈活性為每場比賽動態自訂替換文本,模仿PHP 中的回調功能。
以上是如何在Java中實作PHP的preg_replace_callback()功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!