Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> String.replaceAll() получение строки из рег.выр. 
:(
    Опции темы
Molodec
Дата 31.8.2011, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.12.2010
Где: Украина

Репутация: нет
Всего: 1



Добрый день, господа.
Хочу написать некоторое обрамление строк. 
Чтобы строки, выбранные по регулярному выражению обрамлялись, допустим в [b]Строка[b].
Использую метод:
result=result.replaceAll("//.*\n", "[b][b]" );
Только вот проблема. Как между [b] [b] вставить найденную регулярным выражением строку? 
Может это уже реализовывалось в других библиотеках? 
А то как я только не пробовал... 
Вот один из нерабочих примеров:
Код

        String s;
        result=result.replaceAll(s="//.*\n", "[b]"+s+"[b]" );

Заранее спасибо. 
---
Закрывающий символ / для BB-кода удалил для отображения в символьном виде на данном форуме. 

Это сообщение отредактировал(а) Molodec - 31.8.2011, 20:56
PM MAIL   Вверх
priam220
Дата 31.8.2011, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 4.6.2010

Репутация: 7
Всего: 8



Код

    public static void main(String[] args){
        String str = "xxxyxx";
        String pattern = "y";
        System.out.println(str.replaceAll(pattern, "<" + pattern + ">" ));
        }


Вывод: xxx<y>xx

Это сообщение отредактировал(а) priam220 - 31.8.2011, 21:26
PM MAIL   Вверх
aleksandy
Дата 1.9.2011, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 260
Регистрация: 17.12.2006

Репутация: 4
Всего: 5



Цитата(Molodec @  31.8.2011,  20:52 Найти цитируемый пост)
Только вот проблема. Как между  [b] вставить найденную регулярным выражением строку? 

[B]$1
PM   Вверх
priam220
Дата 1.9.2011, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 4.6.2010

Репутация: 7
Всего: 8



группа будет 0:
Код

            String str = "xxxyxx";
            String pattern = "y";
            System.out.println(str.replaceAll(pattern , "[b]$0[\\\\b]" ));


или же надо указывать скобки:
Код

            String str = "xxxyxx";
            String pattern = "y";
            System.out.println(str.replaceAll("("+ pattern + ")", "[b]$1[\\\\b]" ));


Вывод: xxx[b]y[\b]xx

Это сообщение отредактировал(а) priam220 - 1.9.2011, 12:40
PM MAIL   Вверх
Molodec
Дата 3.9.2011, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.12.2010
Где: Украина

Репутация: нет
Всего: 1



priam220, спасибо большое. 
Этот вариант отлично работает:
Код

  String str = "xxxyxx";
            String pattern = "y";
            System.out.println(str.replaceAll(pattern , "[b]$0[\\\\b]" ));

+
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0871 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.