![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| blackbanny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 18.11.2009 Репутация: нет Всего: нет |
задача в следующем: нужно удалить заданные слова из текста, написал следующую функцию:
но здесь удаляются слова только если они окружены пробелами, а как удалять слова если слева или справа от них стоят знаки препинания? чтобы вручную не перебирать: "," + word + " "; " " + word + ","; " " + word + "!" и т.д. |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15719 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| blackbanny |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 18.11.2009 Репутация: нет Всего: нет |
можете пояснить 4 и 9 строки... |
||||
|
|||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15719 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Что именно непонятно?
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| blackbanny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 18.11.2009 Репутация: нет Всего: нет |
Добавлено через 14 минут и 8 секунд LSD, еще если я использую ваш метод, то у меня из строки: "Регулярные выражения на практике" получается строка "Регулярные выражения практике", между словом "выражения" и словом "практике" 3 пробела, как оставить только один? |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15719 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
\b - это означает word boundary, т.е. это или разделитель или начало, конец строки, скобки означают capturing group
$1 $2 - это ссылка на то что попало в capturing group 1 и 2 соответвенно. \ - это просто пробел, его надо экранировать потому что в регулярках пробелы игнорируются (хотя возможно в строке для замены их можно оставить как есть, надо проверить) Дело в том, что в \b попадают все разделители и пробелы, и точки, и запятые. Можно оставить только первый сиивол, т.е. из:
останется только точка. Написать же шаблон который бы удалял только повторяющиеся пробелы сложнее и проще еще раз сделать replaceAll() для удаления повторяющихся пробелов. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| blackbanny |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 18.11.2009 Репутация: нет Всего: нет |
LSD, спасибо) сделал замену лишних пробелов так:
|
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |