Java PHP の preg_replace_callback と同等
PHP 関数 preg_replace_callback() は、正規表現で見つかった一致ごとにコールバック関数を呼び出します。 Java は同等の機能を提供していますか?
Java の代替案: ネイティブ アプローチの採用
Java は preg_replace_callback() と直接同等の機能を提供しませんが、それによって私たちは可能になります。 Matcher と StringBuffer を活用した別のアプローチを使用します。同様の結果を達成する方法は次のとおりです。
ステップ 1: 正規表現をコンパイルします
Matcher regexMatcher = regex.matcher(subjectString);
ステップ 2: 一致を反復処理します
while (regexMatcher.find())
ステップ 3: 置換テキストを動的に変更します
regexMatcher.appendReplacement(resultString, "replacement");
ステップ 4: コンテキスト末尾を追加する
regexMatcher.appendTail(resultString);
例:
StringBuffer resultString = new StringBuffer(); Pattern regex = Pattern.compile("\[thumb(\d+)\]"); Matcher regexMatcher = regex.matcher(subjectString); while (regexMatcher.find()) { regexMatcher.appendReplacement(resultString, "<img src=\"thumbs/" + photos[regexMatcher.group(1)] + "\">"); } regexMatcher.appendTail(resultString);
これらの手順に従うことで、PHP コードを Java でシームレスに再利用し、カスタム置換による正規表現の一致を適切に処理できます。
以上がPHP の preg_replace_callback() に相当する Java はありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。