Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Windows 11 si boxa portabila - de...

Angajarea unei persoane de 18 ani...

Depunere declaratie unica PFA - i...

Situatie mostenire
 Inlocuit/upgrade placa video Nvid...

Google tv si open vpn

Vot europarlamentare

Sfat reparatii
 Jurnal de bord Tesla M3SR 2024 Hi...

Acostament sosele comune Romania

AI-ul Google cartografiaza 1 mili...

De ce nu se fac profesori doar ol...
 imprimanta laser capacitate medie...

Parere garsoniera Tineretului

Sfaturi achizitie boxe hi-fi pent...

Baterie externa solara vs baterie...
 

Preg_Match_All Multiple

- - - - -
  • Please log in to reply
5 replies to this topic

#1
phpguru

phpguru

    Junior Member

  • Grup: Members
  • Posts: 127
  • Înscris: 12.07.2012
Salutare,
Vreau sa preiau de pe un site: ZIUA, ORA si TITLUL. Fiecare zi este impartita in doua parti, vreau sa unesc cele doua parti intr-un singur cod, per zi individuala. Multumesc in avans pt. orice ajutor.

<div id="PARTEA-1"> // Prima parte

<tr>
<td class="data">luni (1.1.1970)</td>
<td class="data">marti (2.1.1970)</td>
<td class="data">miercuri (3.1.1970)</td>
<td class="data">joi (4.1.1970)</td>
<td class="data">vineri (5.1.1970)</td>
</tr>

<tbody>
<tr><td class="ora">07:00</td> <td class="title">Mic dejun</td></tr>
<tr><td class="ora">12:00</td> <td class="title">Pranz</td></tr>
<tr><td class="ora">19:00</td> <td class="title">Cina</td></tr>
</tbody>

<tbody>
<tr><td class="ora">07:00</td> <td class="title">Mic dejun</td></tr>
<tr><td class="ora">12:00</td> <td class="title">Pranz</td></tr>
<tr><td class="ora">19:00</td> <td class="title">Cina</td></tr>
</tbody>

<tbody>
<tr><td class="ora">07:00</td> <td class="title">Mic dejun</td></tr>
<tr><td class="ora">12:00</td> <td class="title">Pranz</td></tr>
<tr><td class="ora">19:00</td> <td class="title">Cina</td></tr>
</tbody>

<tbody>
<tr><td class="ora">07:00</td> <td class="title">Mic dejun</td></tr>
<tr><td class="ora">12:00</td> <td class="title">Pranz</td></tr>
<tr><td class="ora">19:00</td> <td class="title">Cina</td></tr>
</tbody>

<tbody>
<tr><td class="ora">07:00</td> <td class="title">Mic dejun</td></tr>
<tr><td class="ora">12:00</td> <td class="title">Pranz</td></tr>
<tr><td class="ora">19:00</td> <td class="title">Cina</td></tr>
</tbody>

</div> // Inchide prima parte
##########
<div id="PARTEA-2"> // A 2 a parte

<tr>
<td class="data">luni (1.1.1970)</td>
<td class="data">marti (2.1.1970)</td>
<td class="data">miercuri (3.1.1970)</td>
<td class="data">joi (4.1.1970)</td>
<td class="data">vineri (5.1.1970)</td>
</tr>

<tbody>
<tr><td class="ora">20:00</td> <td class="title">Relaxare</td></tr>
<tr><td class="ora">24:00</td> <td class="title">Somn</td></tr>
<tr><td class="ora">06:00</td> <td class="title">Alarma</td></tr>
</tbody>

<tbody>
<tr><td class="ora">20:00</td> <td class="title">Relaxare</td></tr>
<tr><td class="ora">24:00</td> <td class="title">Somn</td></tr>
<tr><td class="ora">06:00</td> <td class="title">Alarma</td></tr>
</tbody>

<tbody>
<tr><td class="ora">20:00</td> <td class="title">Relaxare</td></tr>
<tr><td class="ora">24:00</td> <td class="title">Somn</td></tr>
<tr><td class="ora">06:00</td> <td class="title">Alarma</td></tr>
</tbody>

<tbody>
<tr><td class="ora">20:00</td> <td class="title">Relaxare</td></tr>
<tr><td class="ora">24:00</td> <td class="title">Somn</td></tr>
<tr><td class="ora">06:00</td> <td class="title">Alarma</td></tr>
</tbody>

<tbody>
<tr><td class="ora">20:00</td> <td class="title">Relaxare</td></tr>
<tr><td class="ora">24:00</td> <td class="title">Somn</td></tr>
<tr><td class="ora">06:00</td> <td class="title">Alarma</td></tr>
</tbody>

</div> // Inchide a 2 a parte
##########



#2
G1q

G1q

    Active Member

  • Grup: Members
  • Posts: 1,019
  • Înscris: 31.01.2007
Și unde te-ai blocat? Cum preiei datele? Ce legătură are PHP cu asta că eu vad doar cod HTML

#3
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,259
  • Înscris: 24.02.2007
HTML nu se parseaza cu preg_match

#4
phpguru

phpguru

    Junior Member

  • Grup: Members
  • Posts: 127
  • Înscris: 12.07.2012
Imi este mai usor cu preg_match_all sa le extrag in array.
- Am reusit sa extrag ORA si TITLUL in ordinea prezentata, dar fara ziua.
- Am reusit sa extrag doar ZIUA dar fara ora si titlu.
Mai exact nu-mi iese deloc.

#5
MadMax

MadMax

    Pike hunter

  • Grup: Senior Members
  • Posts: 2,361
  • Înscris: 14.05.2003
Nu stiu daca se poate face printr-un preg_match_all(), dar daca ar fi sa fac, as implementa putina logica acolo:
- spart pe "saptamani", explode() dupa <div id="PARTEA apoi pentru fiecare item din acel array:
- obtin lista de zile ( <td class="data">([^<]+)</td>), sparg restul dupa <tbody> si pentru fiecare din acele elemente, tinand cont de index (primul tbody corespunde la primul td cu class ="data", etc) as crea array-ul final folosing un
preg_match_all('|<tr><td class="ora">([^<]+)</td> <td class="title">([^<]+)</td></tr>|', ... )

Edited by MadMax, 04 June 2023 - 13:44.


#6
iulian_1976

iulian_1976

    Active Member

  • Grup: Members
  • Posts: 1,576
  • Înscris: 10.05.2008
Pune codul facut de tine, cum il preiei totusi cu un Api, cu un web scraping ? !Posted Image

Problema tine de regex din ce spui, e munca de chinez sau de un expert...in regex.

Edited by iulian_1976, 08 June 2023 - 13:20.


Anunturi

Second Opinion Second Opinion

Folosind serviciul second opinion ne puteți trimite RMN-uri, CT -uri, angiografii, fișiere .pdf, documente medicale.

Astfel vă vom putea da o opinie neurochirurgicală, fără ca aceasta să poată înlocui un consult de specialitate. Răspunsurile vor fi date prin e-mail în cel mai scurt timp posibil (de obicei în mai putin de 24 de ore, dar nu mai mult de 48 de ore). Second opinion – Neurohope este un serviciu gratuit.

www.neurohope.ro

1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate