Multi ereg, meerdere matches

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Kay Kay

Kay Kay

03/02/2009 16:42:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
    $str
= "<hoi>Hallo</hoi> ik ben Pietje <hoi>puk</hoi> en dit is een <hoi>test</hoi>";
    
    ereg(".*<hoi>(.*)</hoi>.*", $str, $array);
    var_export($array);
?>

In de array staat nu dit:
Quote:
array (
0 => 'Hallo ik ben Pietje puk en dit is een test',
1 => 'test',
)


Ik wil dus dat hij ook Hallo en puk mee neemt, dus dat de array er zo uit komt te zien:
Quote:
array (
0 => 'Hallo ik ben Pietje puk en dit is een test',
1 => 'Hallo',
2 => 'puk',
3 => 'test',
)

Ik heb wel wat gevonden, zoals deze functie die op php.net staat:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
function returnSubstrings($text, $openingMarker, $closingMarker)
    {

        $openingMarkerLength = strlen($openingMarker);
        $closingMarkerLength = strlen($closingMarker);

        $result = array();
        $position = 0;
        
        while (($position = strpos($text, $openingMarker, $position)) !== false)
        {

            $position += $openingMarkerLength;
            
            if (($closingMarkerPosition = strpos($text, $closingMarker, $position)) !== false)
            {

                $result[] = substr($text, $position, $closingMarkerPosition - $position);
                $position = $closingMarkerPosition + $closingMarkerLength;
            }
        }

        
        return $result;
    }

?>

Maar kan dit niet simpeler? 1 Functie ?
Gewijzigd op 01/01/1970 01:00:00 door Kay Kay
 
PHP hulp

PHP hulp

28/02/2020 16:07:55
 
PHP Newbie

PHP Newbie

03/02/2009 16:45:00
 
Kay Kay

Kay Kay

03/02/2009 16:56:00
Quote Anchor link
Oke thnx! Ik had die wel gezien, maar kon uit de uitleg en voorbeelden niet opmaken dat het dat deed wat ik wil.
Thnx
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.