Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > PHP: Тексты > Помогите с регулярным выражением |
Автор: JFox 7.5.2010, 18:39 | ||||||
Здравствуйте, помогите пожалуйста составить регулярное выражение, которое будет вытаскивать из кода все данные, находящиеся между тегами <tr>(.*)</tr> Пробовал так:
но почему то не работает( вот вырезка из странички, которую парсинм:
нужно поулчить: Array[0] ( [0] =>4843 [1] =>Третий синдикат [2] =>1,903.52 [3] =>17,594 ) Array[1] ( [0] =>..... [1] =>..... [2] =>..... [3] =>..... ) и так далее. И на этой же странице вторая табличка, полагаю принцип один, но мало ли
Array[1] ( [0] =>4843.gif [1] =>Плантация [2] =>255324 [3] =>CHUVAAK [1] =>Плантация [2] =>1,650.69 [3] =>495,207 ) и так все данные , пока не кончится таблица |
Автор: WebAngel 7.5.2010, 19:24 |
Кто сказал, что тебе нада tr? тебе нужно тоже самое но для td. А чтобы получить: Array[0] ( [0] =>4843 [1] =>Третий синдикат [2] =>1,903.52 [3] =>17,594 ) результат обработать напильником. можешь еще погуглить на тему: DOMDocument, simplexml_import_dom и xpath |
Автор: JFox 7.5.2010, 20:11 | ||
WebAngel, мне нужно вытащить этот блок
в отдельный массив Array[1], следующий аналогичный блок в Array[2] и т.д. , если указывать td вместо tr, все данные идут одной большой кучей, я думал что в данном случае именно tr должен быть "стартом и финишем"..( Мне потом надо будет все внести в бд, следовательно содержимое <tr>*</tr> будет одной записью(надеюсь понятно написал ![]() И подскажите, если не сложно, как можно вытащить только тот блок, в котором есть определенная надпись (например id=4843) |
Автор: brother79 11.5.2010, 05:53 |
Но вообще-то всё правильно составленно и должно работать. Я только обычно ещё экранирую <>, т.е. они вроде тоже что-то означали, типа граници слова кажется, надо смотреть. |