PHP の preg_replace_callback() に相当する Java はありますか?

Mary-Kate Olsen
リリース: 2024-11-07 12:15:02
オリジナル
223 人が閲覧しました

Is There a Java Equivalent to PHP's preg_replace_callback()?

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!