[PHP] Eregi_replace meerdere keren

Pagina: 1
Acties:
  • 605 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Beste leden,

Ik heb onderstaande code.
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?PHP

$file = '<table width="485">
  <tr>
    <td class="dexmaincol">1</td>
    <td class="dexmaincol"><a href="./url/Text.html">Text</a></td>
    <td>Beginner</td>
    <td>40</td>
    <td>100</td>
    <td>35</td>
  </tr>
</table>';

$file = str_replace('<table width="485">','',$file);
$file = str_replace("</table>","",$file);
$file = eregi_replace('<a href="./url/(.*).html">(.*)</a>','\\1',$file);
$file = trim($file);

$preg = '(.*)';

$file2 = '<tr>
    <td class="dexmaincol">'.$preg.'</td>
    <td class="dexmaincol">'.$preg.'</td>
    <td>'.$preg.'</td>
    <td>'.$preg.'</td>
    <td>'.$preg.'</td>
    <td>'.$preg.'</td>
  </tr>';

$file3 = '<b>ID:</b> \\1<br />
<b>Name:</b> \\2<br />
<b>Input #3:</b> \\3<br />
<b>Input #4:</b> \\4<br />
<b>Input $5:</b> \\5<br />
<b>Input #6:</b> \\6<br /><br />';

echo $file;
?>


Output hierboven:
code:
1
2
3
4
5
6
<b>ID:</b> 1<br />
<b>Name:</b> Text<br />
<b>Input #3:</b> Beginner<br />
<b>Input #4:</b> 40<br />
<b>Input #5:</b> 100<br />
<b>Input #6:</b> 35<br /><br />


Tot zover werkt dit, maarrr en nu komt het. Ik heb nu meerdere <tr>'s zitten. Zoiets dus.
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?PHP
$file = '<table width="485">
  <tr>
    <td class="dexmaincol">1</td>
    <td class="dexmaincol"><a href="./url/Text.html">Text</a></td>
    <td>Beginner</td>
    <td>40</td>
    <td>100</td>
    <td>35</td>
  </tr>
  <tr>
    <td class="dexmaincol">2</td>
    <td class="dexmaincol"><a href="./url/Text2.html">Text2</a></td>
    <td>Advanced</td>
    <td>33</td>
    <td>22</td>
    <td>55</td>
  </tr>
</table>';
?>


De output die ik wil horen te krijgen is zo:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<b>ID:</b> 1<br />
<b>Name:</b> Text<br />
<b>Input #3:</b> Beginner<br />
<b>Input #4:</b> 40<br />
<b>Input #5:</b> 100<br />
<b>Input #6:</b> 35<br /><br />

<b>ID:</b> 2<br />
<b>Name:</b> Text2<br />
<b>Input #3:</b> Advanced<br />
<b>Input #4:</b> 33<br />
<b>Input #5:</b> 22<br />
<b>Input #6:</b> 55<br /><br />


Maar ik zou het helemaal niet weten hoe ik dit zou moeten doen. Want behoudt ik mijn code zo dan pakt hij alleen het laatste gedeelte. En het gaat hier over 100+ resultaten die hij moet filtreren zeg maar..

Iemand een suggestie? 8)7

Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 21:18

crisp

Devver

Pixelated

Eerst al je tr's matchen en daarbinnen de td's matchen

Intentionally left blank


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
En hoe doe ik dit precies? Want heb me nooit verdiept in preg/eregi e.d. :$

Acties:
  • 0 Henk 'm!

Verwijderd

ik snap het zelf niet sorry het is een beetje onduidelijk geformuleerd maar idd even googlen voor je table syntax kan idd helpen.

Acties:
  • 0 Henk 'm!

Verwijderd

ahja wacht ik snappem

tzelfde doen voor <td><tr> en </tr> en dan </td> replacen als <br> (string_replace)

[ Voor 8% gewijzigd door Verwijderd op 22-10-2006 12:50 ]


Acties:
  • 0 Henk 'm!

  • KoHa
  • Registratie: Juli 2004
  • Laatst online: 00:15
Verwijderd schreef op zondag 22 oktober 2006 @ 12:26:
En hoe doe ik dit precies? Want heb me nooit verdiept in preg/eregi e.d. :$
Ten Eerste: Dan kun je je daar mooi in gaan verdiepen ;)

Maar de code die jij hierboven hebt "geplakt", klopt totaal niet... Je maakt de variabele $file2 en $file3 aan, terwijl je die helemaal niet gebruikt. Ook de output van ditgene klopt niet met hetgene dat jij gegeven hebt als output... Heb je toevallig het verkeerde bestand gekopieerd?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Oeps was de laatste regel vergeten waar ik die $file2 en $file3 gebruikte.. :P
Dit was de regel.

PHP:
1
$file = eregi_replace($file2,$file3,$file);


Dit hoort voor echo $file en na $file3.

[ Voor 12% gewijzigd door Verwijderd op 22-10-2006 13:58 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Is kicken toegestaan? :$
Pagina: 1