eXeL@B —› Оффтоп —› помогите с регэкспами |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 23 ноября 2010 16:10 · Личное сообщение · #1 Code:
Как выдернуть из html все строки типа: 04.11.2010 Бостон Милуоки 105:102 (ОТ) ?? |
|
Создано: 23 ноября 2010 17:31 · Поправил: Magister Yoda · Личное сообщение · #2 |
|
Создано: 23 ноября 2010 17:36 · Поправил: Crawler · Личное сообщение · #3 В php можно использовать getElementsByTagName (). Где-то видел хороший код парсера На хабре есть пример шикарный MagisterYoda, жесть) ----- Харе курить веники и нюхать клей, к вам едет из Америки бог Шива, и он еврей. |
|
Создано: 23 ноября 2010 17:44 · Личное сообщение · #4 |
|
Создано: 23 ноября 2010 18:30 · Поправил: Guru_eXe · Личное сообщение · #5 |
|
Создано: 23 ноября 2010 19:37 · Личное сообщение · #6 |
|
Создано: 23 ноября 2010 21:18 · Поправил: Magister Yoda · Личное сообщение · #7 |
|
Создано: 23 ноября 2010 21:29 · Личное сообщение · #8 |
|
Создано: 24 ноября 2010 06:06 · Личное сообщение · #9 |
|
Создано: 24 ноября 2010 06:15 · Личное сообщение · #10 РегЭкспа намбр 1 Code:
РегЭкспа намбр 2 Code:
|
|
Создано: 24 ноября 2010 07:27 · Поправил: Guru_eXe · Личное сообщение · #11 Magister Yoda, зачем две? Твое <b>(.*?)</b> и <a href=".*?">(.+?)</a> подходит под условие <(.+?)>(.+?)<(.+?)> бгг)) ну или там пофантазировать и получится какое-нибудь страшное <(b|.+?)>(.+?)<\/(a|b)>, хотя, наверное было бы логичнее <(.+?)>(.+?)<\/(a|b)>, ну это не суть. В итоге: Code:
убираем ненужное, подправляем co1: Code:
Я сам слабо шарю в регулярках, поэтому у меня нубский код, там ведь группы есть, кеизы и все такое, ищу книгу хорошую. Может кто посоветует сразу? ----- may all your PUSHes be POPed! |
|
Создано: 24 ноября 2010 08:17 · Личное сообщение · #12 Guru_eXe да, действительно, но "/" не нужно экранировать =) так что вот так будет Code:
Ara не знаю глюк форума это или что, но иногда лишние пробелы появляются - например в середине ссылки или кода, так что могу предположить что эти пробелы появляются в тэгах. так что проверяй |
|
Создано: 24 ноября 2010 08:19 · Личное сообщение · #13 |
|
Создано: 24 ноября 2010 08:36 · Поправил: Guru_eXe · Личное сообщение · #14 Я экранировал, так как тестил сначала под пхп, а потом не стал менять, так как работает и в вашем тресере. Проверяйте: Code:
Code:
Это хардкорно, не знаю как будет работать, проверять тоже надо: Code:
Code:
И то меня смущает обилие html-тегов. ----- may all your PUSHes be POPed! |
|
Создано: 24 ноября 2010 08:41 · Поправил: Guru_eXe · Личное сообщение · #15 Magister Yoda, да, еще и читшитс есть, а есть такое: пара абзацев на википедии сможет заменить 608 страниц книги? ----- may all your PUSHes be POPed! |
|
Создано: 24 ноября 2010 13:01 · Личное сообщение · #16 |
|
Создано: 24 ноября 2010 18:29 · Поправил: SergX · Личное сообщение · #17 Ara пишет: Как выдернуть из html все строки типа:04.11.2010 Бостон Милуоки 105:102 (ОТ) Ara, не совсем понял, тебе кодес нужен который это делает или результат нужен ? Если результат то почему бы не сохранить это в ХТМЛ файл, потом в тотале открыть по F3 и скопипастить данные ? 23.11.2010 Атланта Бостон 76:99 21.11.2010 Торонто Бостон 102:101 20.11.2010 Бостон Оклахома 84:89 18.11.2010 Бостон Вашингтон 114:83 14.11.2010 Мемфис Бостон 110:116 12.11.2010 Майами Бостон 107:112 09.11.2010 Даллас Бостон 89:87 08.11.2010 Оклахома Бостон 83:92 06.11.2010 Бостон Чикаго 110:105 04.11.2010 Бостон Милуоки 105:102 (ОТ) 03.11.2010 Детройт Бостон 86:109 30.10.2010 Бостон Нью-Йорк 105:101 28.10.2010 Кливленд Бостон 95:87 27.10.2010 Бостон Майами 88:80 Ногами не пинайте, может я чёт не так понял, сёдня сильно устал… |
|
Создано: 24 ноября 2010 21:19 · Личное сообщение · #18 |
|
Создано: 25 ноября 2010 04:32 · Поправил: Zorn · Личное сообщение · #19 Crawler пишет: В php можно использовать getElementsByTagName () Эм, может быть в javascript ? Да и он тут мимо кассы... Magister Yoda пишет: да, действительно, но "/" не нужно экранировать =) Может ты хотел сказать "не обязательно" ? Попробуй в javascripte например без экранирования слешей регулярку замутить Например здесь проверь Guru_eXe пишет: Я экранировал, так как тестил сначала под пхп В пхп можно начало и конец регулярки обозначать любым символом. Я например использую # и тогда тоже не нужно слеши экранировать. А вообще можно хоть каждый символ заэкранировать кроме служебных, хуже от этого не будет. Ну и на последок. Code:
Нужно только лишние пробелы убрать А вот вообще почти без тэгов Code:
|
|
Создано: 25 ноября 2010 09:56 · Личное сообщение · #20 |
|
Создано: 25 ноября 2010 12:40 · Личное сообщение · #21 |
|
Создано: 25 ноября 2010 15:14 · Поправил: Guru_eXe · Личное сообщение · #22 |
|
Создано: 25 ноября 2010 15:57 · Личное сообщение · #23 |
|
Создано: 25 ноября 2010 16:54 · Поправил: Guru_eXe · Личное сообщение · #24 |
|
Создано: 26 ноября 2010 03:44 · Личное сообщение · #25 Guru_eXe пишет: тут, просто, игра — у кого короче Только нужно не переусердствовать Твой например запросто сработает на тексте "1 куча текста 2, восемь>трёх, но < 9", а в странице запросто может встретиться подобная последовательность. Зацените самый правильный регексп для проверки е-мыла (по рфц) ex-parrot.com/~pdw/Mail-RFC822-Address.html Guru_eXe пишет: может это привычка, вот и экранирую Норм привычка. Я тоже если не уверен в символе (а лезть в доки лень ) экранирую. |
|
Создано: 26 ноября 2010 05:26 · Поправил: Guru_eXe · Личное сообщение · #26 Zorn пишет: Твой например запросто сработает на тексте "1 куча текста 2, восемь>трёх, но < 9", а в странице запросто может встретиться подобная последовательность. ну да, но автор ничего не говорил, о другом тексте К слову, все предыдущие варианты тоже могут попадаться Code:
----- may all your PUSHes be POPed! |
|
Создано: 08 марта 2011 03:39 · Личное сообщение · #27 |
|
Создано: 08 марта 2011 08:25 · Личное сообщение · #28 |
|
Создано: 08 марта 2011 15:05 · Личное сообщение · #29 |
|
Создано: 08 марта 2011 15:16 · Поправил: Guru_eXe · Личное сообщение · #30 |
. 1 . 2 . >> |
eXeL@B —› Оффтоп —› помогите с регэкспами |