powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Java и regex
6 сообщений из 6, страница 1 из 1
Java и regex
    #33086041
Oleg Belkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Помогите решить "по правильному" такую задачу:
Есть строки вида "Brown {fox} jump over the lazy dog", "{Brown} fox jump over the lazy dog", "Brown fox {jump}{over} the lazy dog" и т.д. В общем некоторые слова могут быт ь взяты в фигурные скобки. Сколько таких слов со скобками не известно. Нужно все слова вида "{что-то там}" заменить на константу.

Как это сделать по простому, т.е. найти { далее все до } заменить на что-то понятно. Но это не красиво, а хочется получить массив строк для замены и его уже колбасить replace-ом. Подозреваю, что это делается через regexp. Есть идеи как это решить "по красивому"? Или я сильно много-го хочу?

Пример:
До
"Brown {fox} jump over the lazy dog", "{Brown} fox jump over the lazy dog", "Brown fox {jump}{over} the lazy dog"

После:
"Brown 1 jump over the lazy dog", "2 fox jump over the lazy dog", "Brown fox 3 4 the lazy dog".
...
Рейтинг: 0 / 0
Java и regex
    #33086084
Dima Yermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это регексп
\\{([\\w]+)\\}

Им выбираешь в строке и меняешь.

Brown {fox} jump over the lazy dog
{Brown} fox jump over the lazy dog
Brown fox {jump}{over} the lazy dog

Это то что мне выдал регексп плагин для идеи.


Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
Java и regex
    #33086088
Dima Yermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин насчёт плагина загнался. Тут не видно.
Ну а вообщем находит :-)


Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
Java и regex
    #33086102
Фотография XM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, я не вполне понял задачу :)
Обычно я для подстановки в строке вместо {name} значения из некоторой Map пишу следующий код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
 public  replaceTemplates(String source,  Map map){
 Pattern p=Pattern.compile("\\{(.+?)\\}");
 Matcher m=p.matcher(source);
 StringBuffer result= new  StringBuffer();
  while (m.find()){
   String value=String.valueOf(map.get(m.group( 1 )));
   m.appendReplacement(result, value);
 }
 m.appendTail(result);
  return  result.toString();
}
...
Рейтинг: 0 / 0
Java и regex
    #33088013
Фотография peter6636
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg Belkin ты случайно не занимаешься искусственным интеллектом?
...
Рейтинг: 0 / 0
Java и regex
    #33088790
Oleg Belkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет, peter6636!

Нет не занимаюсь. Мне понадобилось разобрать/сформировать часть строки SQL запроса и хотелось это сделать красиво, а не как обычно.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Java и regex
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]