Sarebbe meglio con JTextPane e con testo "stilizzato" (intendo HTML) ma teoricamente si può fare qualcosa anche con JTextArea. L'unica cosa certa è che siccome JTextArea non permette testo stilizzato, non potrai evidenziare alcunché né con colori né con altri stili particolari.
A fronte di un evento del mouse (devi registrare un MouseListener) hai x/y (o il Point comunque). Con questo puoi risalire all'offset "logico" (il carattere in sostanza) nel document con:
public int viewToModel(Point pt)
di JTextArea. Con l'offset puoi ottenere la lettera su cui è caduto il punto o anche la parola addirittura (vedi metodi getWordStart/getWordEnd di javax.swing.text.Utilities). Se "sai" a priori che una parola/frase "linkabile" si trova ad un certo range di offset, puoi già testare l'offset.
Dipende da cosa devi/vuoi fare ....![]()