![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| unkis |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 802 Регистрация: 8.9.2004 Репутация: нет Всего: 1 |
Ребята помогите разобраться с регулярными вырожениями.
есть небольшой кусок HTML, я пытаюсь получить тот текст каторый находится между ссылками. тоесть чтобы выдавало : Make Java - How To Make Java - Regular expression Make Java - Performance для этого я написал шаблон в котором говорю: <a - начинаем искать с "<a" .* - дальше могут быть любые символы > - тег "а" обязательно закрывается (.*) - любые символы, тоесть тот текст каторый мнен нужен </a> - ну изаканчивается всё это закрытым тегом После запуска программы получаю только последний текст
Почему так, что я делаю неправильно и как мне это исправить? Зарания благодарен. -------------------- www.unkis.com |
||||
|
|||||
| LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 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. |
||||
|
|||||
| jsa |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: нет Всего: 20 |
правильнее так:
здесь есть очень интересный пример -------------------- Все мы, на перине с песней, строим небо на земле © Ю. Шевчук |
||||||
|
|||||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 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. |
|||
|
||||
| jsa |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: нет Всего: 20 |
так не работает PS: JDK 1.5 -------------------- Все мы, на перине с песней, строим небо на земле © Ю. Шевчук |
||||
|
|||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
У меня работает, JDK тоже 1.5.
А что за ошибку выдает? -------------------- 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. |
|||
|
||||
| jsa |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: нет Всего: 20 |
потому что в данном случае при первой итерации, будет найдена только первая группа совпадений, а идет уже обращение ко второй
Добавлено @ 17:55 ошибок нет, m.group(1) выдаст значение m.group(0) Добавлено @ 17:57
как бы while здесь и в прицепе не нужен тогда, -------------------- Все мы, на перине с песней, строим небо на земле © Ю. Шевчук |
||||||
|
|||||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Находим первое совпадение, и печатаем из него нулевую группу (это все совпадение) и первую группу. Затем пытаемся найти следующее совпадение и вывести у него группы, и т.д.
Что тут не так? Добавлено @ 17:59 Это еще почему? -------------------- 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. |
|||
|
||||
| jsa |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: нет Всего: 20 |
зачем тогда while
можно
равнозначно первой итерации цикла, по смыслу ведь так -------------------- Все мы, на перине с песней, строим небо на земле © Ю. Шевчук |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Да, но совпадений же может быть несколько. Попробуй такой код:
с while и без, а заодно на строке которая не имеет совпадений. -------------------- 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. |
|||
|
||||
| unkis |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 802 Регистрация: 8.9.2004 Репутация: нет Всего: 1 |
огромное спаибо, теперь я понимаю как это работает
-------------------- www.unkis.com |
|||
|
||||
| jsa |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: нет Всего: 20 |
завтра попрубую, обязательно сообщу о результатах, а что у меня уже ночь
ЗЫЖ -------------------- Все мы, на перине с песней, строим небо на земле © Ю. Шевчук |
|||
|
||||
| jsa |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: нет Всего: 20 |
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. |