/* package whatever; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
	public static void main (String[] args) throws java.lang.Exception
	{
		String s = "Hoje em dia, é necessário ser esperto. O nosso dia a dia é complicado. Zé. diafragma. Dia. É. Dia.";
		String prefixo = "<b>";
		String sufixo = "</b>";
		System.out.println(marcarRepetidas(s, prefixo, sufixo));
	}
	
	public static String marcarRepetidas(String s, String prefixo, String sufixo) {
		Set<String> palavras = new HashSet<String>();
		Set<String> palavrasRepetidas = new HashSet<String>();
		
		for ( String palavra : s.split("[^a-zA-Zà-úÀ-Ú]+") ) {
			palavra = palavra.toLowerCase();
		    if ( palavra.length() > 0 && palavras.contains(palavra) )
		        palavrasRepetidas.add(palavra);
		    palavras.add(palavra);
		}
		
		for ( String palavra : palavrasRepetidas )
		    s = s.replaceAll("(?<![a-zA-Zà-úÀ-Ú])(?iu)(" + palavra + ")(?![a-zA-Zà-úÀ-Ú])",
		                     prefixo + "$1" + sufixo);
		    
		return s;
	}
}