Я думаю, вам нужно использовать что-то вроде этого:
String s = "sample text [myurl]link|http://sample.com[/myurl]";
System.out.println(s.replaceAll("\\[([^\\]]+)\\]([^|]+)\\|(http.+?)\\[/\\1\\]", "<a href=\"$3\">$2</a>"));
См IDEONE demo
REGEX:
\[
- Буквальный [
([^\]]+)
- 1 или более другие символы t хань ]
\]
- Буквенные ]
([^|]+)
- 1 или более других, чем |
\|
персонажи - Буквенные |
(http.+?)
- Подстрока, начиная с http
и затем любые символы, но newlone до ...
\[/
- буква [/
\1
- обратная ссылка на текст, снятый первой группой (имя BB-тега)
\]
- буква ]
.
Выход:
sample text <a href="http://sample.com">link</a>
Спасибо !!!!! Это помогает мне) – Yuriy
Рад помочь, Юра, пожалуйста, также подумайте о том, чтобы продолжить, если ответ оказался полезным. –