私のアプリケーションに次のプロモーション文字列があります。文字列の2番目の出現箇所のみを置換します。
String promotion = "Watch on youtube: Mickey en de stomende drol! Watch on youtube.";
私は、ハイパーリンクによって、第2の単語「YouTubeの」を置換したいので、私は試してみました:
promotion = promotion.replace("youtube","https://www.youtube.com/watch?v=a3leCIk2eyQ");
しかし、これは最初のユーチューブを置き換え、と私は二ユーチューブを交換することにしたいです。
私も試してみました:
promotion = promotion.replaceAll("youtube","https://www.youtube.com/watch?v=a3leCIk2eyQ");
しかし、これは、両方のyoutubesを置き換えます。
"youtube"の2番目の出現をlinKで置き換える最良の方法は何ですか?
http://stackoverflow.com/questions/3976616/how-to-find-nth-occurrence-of-character-in-a-string –
それはあなたが見ることができるyoutube.' 'いつもならドット。もしyou'ubeの2番目の 'youtube'なら、あなたはポジティブなルックバックを使うことができます:'(?<= youtube。{0,999})youtube'(または、ルックバックのテキストの最大長を加えたくない'(?<= youtube)(。*?)youtube'を使って、' $ 1'という逆参照を使って置き換えてください。 – Thomas